我是AngularJS的新手。使用数组参数声明的控制器之间的区别是什么,将依赖关系列为字符串和JavaScript名称,
app.controller("firstController", ['$scope', '$modal', '$log', 'HttpService', 'FisrtSharedService', 'SecondSharedService', function($scope, $modal, $log, HttpService, FisrtSharedService, SecondSharedService) {
}]);
...还有这个表单,只列出了JavaScript名称?
app.controller("firstController", function($scope, $modal, $log, HttpService, FisrtSharedService, SecondSharedService){
});
为什么第一个版本中的语法奇怪?
答案 0 :(得分:12)
在缩小JS文件时使用它。 '$scope', '$modal', '$log', 'HttpService', 'FisrtSharedService', 'SecondSharedService'
只是声明注射器。
app.controller("firstController", ['$scope', '$modal', '$log', 'HttpService', 'FisrtSharedService', 'SecondSharedService', function($scope, $modal, $log, HttpService, FisrtSharedService, SecondSharedService) {
}]);
您还要声明这样的注射器:
firstController.$inject = ['$scope', '$modal', '$log', 'HttpService', 'FisrtSharedService', 'SecondSharedService'];
app.controller("firstController", function($scope, $modal, $log, HttpService, FisrtSharedService, SecondSharedService){
});