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