以下是 Angularjs 中控制器的两种不同实现。在第一种类型中,作者将控制器函数包装在方括号内,并在函数之前定义了两个参数,并将它们传递给函数(如数组)。
myapp.controller('axajCtrl',['$http','$scope',function($http,$scope){
$http.get('extras/data.json').success(function(response){ //make a get request to mock json file.
$scope.data = response; //Assign data received to $scope.data
})
.error(function(err){
//handle error
})
}])
在控制器名称之后的第二种类型中,有一个实现控制器功能的功能。
myapp.controller('axajCtrl',function($http,$scope){
$http.get('extras/data.json').success(function(response){ //make a get request to mock json file.
$scope.data = response; //Assign data received to $scope.data
})
.error(function(err){
//handle error
})
});
我对第一种类型的实现感到困惑。为什么函数定义为数组。第一个实现是否比第二个实现有任何优势?
答案 0 :(得分:0)
在本地开发和编译JS文件时,方括号是可选的...
在生产环境中,我会说它们是必要的,因为一些缩小器和uglifiers重命名()内部的值,这将搞砸所有注入和依赖关系..方块不会被重命名。