不同种类的Angular Directives模式

pra*_*pds 6 angularjs

angular.directive('ppd:reset', function(e1,e2) {
    return function(linkElement) {      
        linkElement.wrap()....
        });
    };
});
Run Code Online (Sandbox Code Playgroud)

angular.directive('ppd:reset', [function() {
        return function(scope, elm, attrs) {   } 

}]);
Run Code Online (Sandbox Code Playgroud)

这两个指令模式有什么区别?

mor*_*itz 17

如果使用括号表示法声明工厂,则可以在缩小代码时避免出现问题:

angular.directive('ppd:reset', ["$compile", function(compile) {
    return function(scope, elm, attrs) {   } 

}]);
Run Code Online (Sandbox Code Playgroud)

进样器会查看您的函数参数名称,以便了解要注入的内容.如果缩小过程重命名那些,则进样器不知道该怎么做.缩小当然不会触及字符串值,这就是数组表示法工作正常的原因.

  • 您可以在DI文档的标题"Inline Annotation"中找到它http://docs.angularjs.org/guide/di#inlineannotation (2认同)