2014-06-06 52 views
0

我創建了一個自定義模塊如下:AngularJS - 在模塊中訪問我的工廠?

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 */ } 
    }); 

}); 
}); 

我希望能夠到現在要說注入到factory1factory2。我試着用

ngCLGModule.factory('factory2', ['factory1', function(factory1) { 
    return { /* My Factory 2 Methods */ } 
}]); 

但沒有什麼是注射factory1是不確定的。我怎樣才能做到這一點?

回答

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幫助我。

+0

這兩個符號在AngularJS依賴注入中都是可以接受的,即使是你提到的文章都會談論這樣的符號。前者保護您免受縮小,而後者則不會。 – ryeballar