在 angularjs 中,我们将参数作为依赖注入传递。例如,
function checkInCtrl ($scope, $rootScope, $location, $http){
…..
….
}
所以当它被缩小时,它变得像,
function checkInCtrl(a,b,c,d){
}
现在 a,b,c,d 不会被 angular 分别解释为 $scope, $rootScope, $location, $http 并且整个代码无法工作。为此,angularjs 提供了一种解决方案,即
checkInCtrl.$inject = ['$scope', '$rootScope', $location', '$http'];
我们可以使用上述语法注入不同的依赖项。这很有效,直到我没有使用某些自定义角度服务作为依赖项。例如,
如果我有类似的东西
function checkInCtrl ($scope, $rootScope, $location, $http){
…..
….
}
它适用于给定的解决方案,但如果我有类似的东西
function checkInCtrl ($scope, $rootScope, $location, $http, customService){
…..
….
}
其中 customService 是这样的
angular.module(customService, ['ngResource'])
.factory('abc', function($resource) {
return $resource('/abc');
})
angular 无法正确解释它的缩小版本。
由于我们必须开始项目开发活动,我们无法花足够的时间来研究问题,因此我们开始使用控制器而不缩小它们。所以第一个问题是角度是否存在这样的问题,或者我犯了一些错误而导致它不起作用?如果存在这样的问题,有什么解决办法?