2017-01-17 5 views
0

私がメインのアプリを持っているつのネストされた角度のアプリと定数は

var secondApp = angular.module('secondApp', []) 
    .constant('config', { 
     key: "secondKey" 
    }); 

私は2番目のアプリ内のディレクティブにconfigを注入しています:

secondApp.directive("ngTest", function (config) { 
}); 

設定は、メインのアプリの設定から初期化されています。私はここで間違っていますか?別の名前を付けて別の名前をつけると、うまく動作します。

var secondApp = angular.module('secondApp', []) 
    .constant('secondConfig', { 
     key: "secondKey" 
    }); 

secondApp.directive("ngTest", function (secondConfig) { 
}); 

バージョンは次のとおりです。AngularJS v1.5.7

答えて

2

AngularJsは1名前空間の衝突を処理するものではありません。だから、

あなたは同じ名前の

  1. サービス
  2. 工場
  3. 定数

を持つので、これを克服するために私のベストに応じて1つのアプリに2つのモジュールを使用している場合、問題は:

ちょうどあなたの変数 のようにいくつかの接頭辞を与える::

var mainApp = angular.module('mainApp', ['secondApp']) 
    .constant('mainApp_config', { 
     key: "mainKey" 
    }); 


var secondApp = angular.module('secondApp', []) 
    .constant('secondApp_config', { 
     key: "secondKey" 
    }); 

私は、これはあなたが探していることが解決策ではありません知っている... を、これは私があなたに提案することができます知っている唯一の方法です。

+0

ありがとうございます。私はこの問題をどのように検索するのか分かりませんでした。いったん名前空間に名前をつけたら、私はそれについて読むことを知っています。これは唯一の方法です。 –

関連する問題