controller,link,compile不同

   测试案例

.directive('testDirective', function() {
    return {
        restrict: 'E',
        template: '<p>Hello {{number}}!</p>',
        controller: function($scope, $element){
            $scope.number = "controller:"+$scope.number;
        },
        link: function(scope, el, attr) {
            scope.number = "link:"+scope.number;
        },
        compile: function(element, attributes) {
            return {
                pre: function preLink(scope, element, attributes) {
                    scope.number = "compile: pre:"+scope.number;
                },
                post: function postLink(scope, element, attributes) {
                    scope.number = "compile: post:"+scope.number;
                }
            };
        }
    }
});

controller先运行,compile后运行,link不运行

将上例中的compile注释掉,controller先运行,link后运行,link和compile不兼容

posted @ 2016-02-19 10:06  广林  阅读(251)  评论(0编辑  收藏  举报