在数组中定义控制器依赖项的区别是什么:
app.controller('IndexController', ['$rootScope', '$http', function($rootScope, $http) {
//some cool stuff
}]);
并将它们直接注入到函数中:
app.controller('IndexController', function($rootScope, $http) {
//some cool stuff
});
很多帖子和教程都使用较短的版本,所以我想知道第一种方式是否有任何优势。
谢谢!
答案 0 :(得分:2)
如果您使用某些缩小工具(例如uglify
),则必须执行此操作。这些工具会更改变量的名称,例如:
app.controller('IndexController', function($rootScope, $http) {
//some cool stuff
});
变成类似的东西:
randomVariable.controller('IndexController',function(a, b){});
并且a
和b
不是您的依赖项。
在另一种情况下,缩小的代码变为:
app.controller('IndexController',['$rootScope','$http',function(a,b)
此处a
和b
作为参数传递来自两个值的字符串,因此缩小工具无法修改它们