一尘不染

Angular JS中的依赖注入

angularjs

我已经阅读了AngularJS文档,但仍然没有我知道的答案。

为什么要使用两次?一次作为数组元素,第二次作为函数参数。

someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) {
  // ...
}]);

阅读 263

收藏
2020-07-04

共1个答案

一尘不染

如果缩小此代码:

someModule.controller('MyController', function($scope, greeter) {
  // ...
});

您将以(类似)结尾:

someModule.controller('MyController', function(a, b) {
  // ...
});

由于参数名称丢失,因此Angular将无法注入依赖项。

另一方面,如果您将此代码最小化:

someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) {
  // ...
}]);

您将以:

someModule.controller('MyController', ['$scope', 'greeter', function(a, b) {
  // ...
}]);

参数名称可用:Angular的DI可操作。

2020-07-04