小编典典

为什么我们在angularjs中两次注入依赖项?

angularjs

我是angular的新手,想知道为什么和何时应该两次注入所有需要的依赖项。

范例:

var analysisApp=angular.module('analysisApp',[]);

analysisApp.controller('analysisController',function($scope,$http,$cookies,$state,globalService){

});

但是我们也可以将以上代码编写为:

var analysisApp=angular.module('analysisApp',[]);

analysisApp.controller('analysisController',['$scope','$http','$cookies','$state','globalService',function($scope,$http,$cookies,$state,globalService){

}]);

为什么呢


阅读 251

收藏
2020-07-04

共1个答案

小编典典

这是为了使应用程序具有 最小安全性

小心:如果您打算压缩代码,则您的依赖项名称将被重命名并破坏您的应用程序。

当你将(或 可能 ),再压缩所有文件,依赖由像改为ab,…等等。

但是,当您使用数组和类似字符串的语法时,如第二个片段所示,string它们永远不会最小化,可以用于映射。因此,应用程序知道了这a一点$scope(请参见下面的示例)。

例:

// The minified version
var _ = angular.module('analysisApp', []);

_.controller('analysisController', ['$scope', '$http', '$cookies', '$state', 'globalService', function (a, b, c, d, e) {
    a.name = 'John Doe'; // Now a here is `$scope`.
}]);

查看角度文档

这是一篇很好的文章介绍了如何通过Grunt使您的应用成为最低安全要求。

2020-07-04