77

他の定数で定数を定義しようとしていますが、必要な定数が依存しているときに初期定数の準備ができていないため、実行できないようです。これがまったく不可能かどうかを確認したい。

現在、私はこのように定数を持っています:

angular.module('mainApp.config', [])
    .constant('RESOURCE_USERS_DOMAIN', 'http://127.0.0.1:8008')
    .constant('RESOURCE_USERS_API', 'http://127.0.0.1:8008/users')
    // Specific routes for API
    .constant('API_BASIC_INFORMATION', RESOURCE_USERS_API + '/api/info')
    .constant('API_SOCIAL_NETWORKS', RESOURCE_USERS_API + '/api/social')
    ;

2 番目の 2 つの定数は、私が達成したいものです。

4

6 に答える 6

13

私はこのようにします:

var constants = angular.module('constants', []);

constants.factory("Independent", [function() {
   return {
      C1: 42
   }
}]);

constants.factory('Constants', ["Independent", function(I) {
   return {
      ANSWER_TO_LIFE: I.C1
   }
}]);
于 2013-08-28T17:53:34.370 に答える
8

プロバイダーで定数にアクセスする必要がない限り、これはうまくいくはずです:

.constant('HOST', 'localhost')
.factory('URL', function(HOST) { return "http://" + HOST })

プロバイダーで定数にアクセスする必要がある場合は、さらに作業を行う必要があると思います。

.constants('HOST', 'localhost')
.provider('DOMAIN', function(HOST) {
    var domain = "http://" + HOST;
    this.value = function() { return domain };
    this.$get = this.value;
 })
 .provider("anyOtherProvider", function(DOMAINPovider) {
     var domain = DOMAINProvider.value();
 };
 .factory("anyOtherService", function(DOMAIN) {
 })
于 2015-05-29T08:48:45.107 に答える