2015-08-03 22 views
0

我遇到了與AngularJS相關的問題。我們有一個主要的應用程序,讓我們把它AngularJS - 使模塊不斷/服務/工廠私有

angular.module('main'); 

這個應用程序導入其他模塊的依賴關係:

angular.module('submodule1'); 
angular.module('submodule2'); 

在這些模塊中的一個我定義常量:

angular.module('submodule1').constant('CONST', 'foo'); 

之後,我在模塊中使用這個常量。 現在,我的問題如下:如果兩個子模塊作爲模塊'main'中的依賴項注入,常量'CONST'也可以注入'submodule2'中。這可能會導致很多問題,特別是如果'submodule2'也用一個不同的值聲明瞭一個名爲CONST的常量。

所以問題是......我如何使'CONST'專用於'submodule1'專用?

回答

2

因爲常量是全局的應用程序,你需要有不同的名字......

,如果你想同一個名字,這可能是一個解決辦法:

angular.module('submodule1') 

.service('submodule1Constant',function(){ 
    //private 
    var CONST = "foo"; 

    this.get = function(){ 
    return CONST; 
    }; 
}) 

.service('submodule2Constant',function(){ 
    //private 
    var CONST = "foo"; 

    this.get = function(){ 
    return CONST; 
    }; 
}); 
相關問題