我创建了一个自定义模块,如下所示:
function(window, angular, undefined, $, _) {
define(['app/scripts/config/resources'], function(config) {
var ngCLGModule = angular.module('clg-module', []);
ngCLGModule.factory('factory1', function() {
return { /* My Factory 1 Methods */ }
});
ngCLGModule.factory('factory2', function() {
return { /* My Factory 2 Methods */ }
});
});
});
我希望现在能够将factory1
注入factory2
。我尝试使用
ngCLGModule.factory('factory2', ['factory1', function(factory1) {
return { /* My Factory 2 Methods */ }
}]);
但没有注入任何内容,factory1
未定义。我怎么能这样做?
答案 0 :(得分:0)
那么,我想出了我的错误;实际上很简单。
这是我正在做的事情(这是错误的):
ngCLGModule.factory('factory2', ['factory1', function(factory1) {
return { /* My Factory 2 Methods */ }
}]);
这是我应该做的(这是对的):
ngCLGModule.factory('factory2', function(factory1) {
return { /* My Factory 2 Methods */ }
});
注意我不会将参数factory1
作为数组的一部分传递给资源的第二个参数。
对于任何有兴趣的人,this article帮助了我。