我正在尝试学习Angular,并且我遇到了许多人以这些方式格式化控制器的不同示例。功能上有区别吗?
var app = angular.module('myApp', []);
app.controller('myCtrl', [
'$scope',
function($scope){
$scope.firstName = "John";
$scope.lastName = "Doe";
}]);
和
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.firstName = "John";
$scope.lastName = "Doe";
});
答案 0 :(得分:0)
首先,功能似乎相同,但第一部分代码是利用依赖注入!
https://docs.angularjs.org/guide/di
简而言之,通过包含“['$ scope'”,你可以确保当控制器函数要求时,angular将能够解析正确的依赖关系。
我自己更喜欢使用John Papa角度风格指南中列出的手动注射方法,这对我来说更有意义(https://github.com/johnpapa/angular-styleguide/blob/master/a1/README.md#manual-annotating-for-dependency-injection)
NameOfController。$ inject = ['$ scope'];