我正在浏览Angular JS文档。我无法弄清楚我在下面的代码中提到的一行。谁能解释一下?
script.js :
angular.module('scopeExample', [])
.controller('MyController', ['$scope', function($scope) { // This line
$scope.username = 'World';
$scope.sayHello = function() {
$scope.greeting = 'Hello ' + $scope.username + '!';
};
}]);
index.html :
<div ng-controller="MyController">
Your name:
<input type="text" ng-model="username">
<button ng-click='sayHello()'>greet</button>
<hr>
{{greeting}}
</div>
我不明白这一点:
['$scope', function($scope) {}]
这里,为什么使用两个$scope
。
答案 0 :(得分:2)
Angular JS - 内联数组注释
它用于避免缩小问题。 缩小后,代码如下:
['$scope', function(a) {}]
所以Angular知道要注入哪些依赖项。
否则它看起来像
function(a){}
缩小之后并且角度不知道哪个依赖性意味着什么。
您可以在AngularJS Docs(依赖注入)中找到更多信息 https://docs.angularjs.org/guide/di
答案 1 :(得分:0)
在Michael的帮助下,我在Angular JS Docs上找到了这个。
这是注释应用程序组件的首选方法。这是 如何编写文档中的示例。
例如:
// I want this "then" to only happen when my observable is complete. authService.updatePicture().then(p => { document.querySelector('img').src = this.userAuth.photoURL); }
这里我们传递一个数组,其元素由一个字符串列表组成( 依赖项的名称)后跟函数本身。
使用此类注释时,请注意保留注释 数组与函数声明中的参数同步。