我在AngularJS教程中看到过,有些人声明他们的控制器功能是这样的:
function FirstController($scrope) {
// do something with $scope
}
和其他人这样做了:
var FirstController = function ($scope) {
// do something with scope
}
哪种方式是在JS文件中声明控制器的最佳方式,哪种方式最适合使用最新版本的AngularJS(现在为1.0.7),哪种方法最佳?或者这不重要吗?
答案 0 :(得分:22)
您应该遵循他们提供的第二个示例,该示例使用字符串来标识您的控制器而不是潜在的全局函数。使用Array语法,这样您可以缩小代码,而无需担心缩小器重命名函数参数。
var myApp = angular.module('myApp');
myApp.controller('GreetingCtrl', ['$scope', function($scope) {
$scope.greeting = 'Hola!';
}]);
答案 1 :(得分:0)
myApp.controller('myControl',['$scope',function($scope){
$scope.controlname = "Something";
}]);
答案 2 :(得分:0)
声明控制器的推荐方法是使用数组表示法:
someModule.controller('MyController', ['$scope', 'dep1', 'dep2', function($scope, dep1, dep2) {
...
$scope.aMethod = function() {
...
}
...
}]);
根据angularJS网站:https://docs.angularjs.org/guide/di