AngularJS如何与JS minifiers一起使用

时间:2016-09-17 06:31:05

标签: javascript angularjs

AngularJS中的依赖注入实际上如何工作?

是的,我读了很多东西,我知道如何使用

假设我们有以下控制器:

app.controller('LoginCtrl', ['$scope', '$rootScope', '$http', '$location', function($scope, $rootScope, $http, $location) { /* ... */ }]);

我知道我们应该使用传递数组来使用JS minifiers,所以Angular无论如何都会知道依赖的实名。

假设我们实际使用JS minifier并且$scope被转换为$s。 Angular如何知道此$s实际上是$scope,因此它应该具有$scope文档中描述的相同界面?

1 个答案:

答案 0 :(得分:4)

缩小过程会缩短函数的所有名称和参数,以减轻文件的重量。因此,一旦你的控制器缩小,他将看起来像这样:

function(a, b, c, d) { /* ... */ }]);

但是如果您正在使用$inject,或者通过函数传递数组,它将让您的函数知道应该将哪个服务注入到控制器中的每个参数。

app.controller('LoginCtrl', [
'$scope', '$rootScope', '$http', '$location', 
function(a, b, c, d) { /* ... */ }]);

因此,一旦它将被缩小角度,仍然应该注入的服务的名称和位置编号(数组中的元素的索引)中的每一个都链接到控制器函数中的参数的索引。因此,正如我们所见,订购事项