它是角度依赖注入的定义方式,因此您可以在不破坏源代码的情况下丑化它。
例如,控制器可以定义两个依赖项,如下所示:
angular.module('App').controller('SomeController', ['ngRoute', 'ngFileUpload', function (route, fileUpload) {
console.log('this is ngRoute', route);
console.log('this is fileUpload', fileUpload);
}]);
Angular 将实例化控制器,其依赖项与数组中的顺序相同。所以你给参数起的名字并不重要。现在想象一下您想要丑化代码以使其如下所示:
angular.module('App').controller('SomeController', ['ngRoute', 'ngFileUpload', function (a, b) {
console.log('this is ngRoute', a);
console.log('this is fileUpload', b);
}]);
您仍然会像您应该的那样获得依赖项。
但是,如果您使用此表示法:
angular.module('App').controller('SomeController', function (ngRoute, ngFileUpload) {});
您无法通过重命名函数参数来丑化代码。