Fro*_*art 3 javascript angularjs
AngularJS 中的依赖注入实际上是如何工作的?
是的,我读了很多东西,我知道如何使用它。
假设我们有以下控制器:
app.controller('LoginCtrl', ['$scope', '$rootScope', '$http', '$location', function($scope, $rootScope, $http, $location) { /* ... */ }]);
Run Code Online (Sandbox Code Playgroud)
我知道我们应该使用传递一个数组才能使用 JS 缩小器,所以无论如何 Angular 都会知道依赖项的真实名称。
假设我们实际上使用了 JS minifier 并且$scope被转换为$s. Angular 如何知道这$s实际上是一个,$scope所以它应该具有与$scope文档中描述的相同的接口?
缩小过程使函数的所有名称和参数更短,以减少文件的重量。因此,一旦您的控制器被缩小,他将如下所示:
function(a, b, c, d) { /* ... */ }]);
但是,如果您正在使用$inject或通过函数传递注入数组,它将让您的函数知道应该将哪个服务确切地注入到您的控制器中的每个参数中。
app.controller('LoginCtrl', [
'$scope', '$rootScope', '$http', '$location',
function(a, b, c, d) { /* ... */ }]);
Run Code Online (Sandbox Code Playgroud)
因此,一旦它被缩小,angular 仍将是应注入的服务名称和位置编号(数组中元素的索引),它们中的每一个都链接到控制器函数中的参数索引。所以,正如我们所见,顺序很重要。
| 归档时间: |
|
| 查看次数: |
48 次 |
| 最近记录: |