我正在阅读 http://www.alexrothenberg.com/2013/02/11/the-magic-behind-angularjs- dependency-injection.html,事实证明,如果您缩小JavaScript的大小,angularjs依赖项注入会出现问题,我想知道是否
var MyController = function($scope, $http) { $http.get('https://api.github.com/repos/angular/angular.js/commits') .then(function(response) { $scope.commits = response.data }) }
你应该使用
var MyController = ['$scope', '$http', function($scope, $http) { $http.get('https://api.github.com/repos/angular/angular.js/commits') .then(function(response) { $scope.commits = response.data }) }]
总而言之,我认为第二个片段是针对angularjs的旧版本的,但是....
我是否应该始终使用注入方式(第二种方式)?
是的 ,永远!因此,即使您的minifer将$ scope转换为变量a,将$ http转换为变量b,它们的 身份仍然保留 在字符串中。
请参阅AngularJS文档的此页面,向下滚动到 A Mining on Minification 。
更新
另外,您可以在构建过程中使用ng-annotate npm软件包来避免这种冗长的描述。