在Angular JS中逐步添加现有变量

时间:2015-02-02 13:31:27

标签: angularjs constants

是否可以像这样创建常量或值

    app.value('test', {
        a : 'Value 1'
    });

    app.value('test', {
        b : 'Value 2'
    });

他们两人实际上合并了,现在第一个被覆盖了。我需要像以前在PHP中那样的东西

$global_vars = array();

然后将所有可用的全局变量推送到一个global_vars数组中。

$global_vars['Number_of_pages'] = 50;

然后在某个地方

$global_vars['currency'] = "USD";

3 个答案:

答案 0 :(得分:1)

每次添加属性时都可以extend一个对象:

https://docs.angularjs.org/api/ng/function/angular.extend

答案 1 :(得分:1)

使用constant,请勿使用value

  

常量可在角度的配置阶段内可用,值不

使用空白常量

创建一个工厂
app.constant('test', {
   //will be blank
});

//set a in app1
app1.config(['test', function (test){
   angular.extend(test,  {a : 'Value 1'})
}]);

//set b in app2
app2.config(['test', function (test){
   angular.extend(test,  {b : 'Value 2'})
}]);

您可以在不同的模块中进行如上设置。

这可能对您有所帮助。感谢。

答案 2 :(得分:0)

使用$ rootScope。 添加到$ rootScope。通过注入来添加rootcope:

.controller('test',['$rootScope',function($rootScope){
//add to root scope