AngularJS中特定于模块的常量?

时间:2014-09-10 14:49:29

标签: angularjs dependency-injection constants

我刚刚发现我对角度模块一无所知。

以下指令中con的值为baz,这意味着定义常量的位置无关紧要,即它不依赖于模块。

有没有办法让模块特定的常量?

angular.module('amodule', [])
    .constant("foo", "bar")
    .directive('helloWorld', function (foo) {
        return {
            link: function(scope) { scope.con = foo },
            restrict: 'E',
            scope:{
                name:'bind'
            },
            template: '<span>{{con}}</span>'

        }
    })

angular.module('stuff', [])
    .constant("foo", "baz")

angular.module('HelloApp', ['amodule', 'stuff'])

1 个答案:

答案 0 :(得分:0)

不,当您在模块中定义AngularJS工件时,如果您在应用模块中引用它们,则可用于所有模块。如果两个模块定义相同的常量,则定义的最后一个依赖项将获胜并覆盖第一个。在这种情况下,订单是关键。  在你的情况下,con的值是baz,因为引用的最后一个模块是stuff。