0

同じ名前のコントローラで2つのモジュール(AとB)があります。コントローラをモジュールCにインポートすると、同じ名前のコントローラが互いにオーバーライドされます。角型コントローラ名がモジュール間で衝突する

これを回避する方法は何ですか。私のコントローラのためのタイプ "module.controller"の命名規則?

ありがとうございます!ここで

更新

はコードの例です:

module('a',[]).controller("con"); 
module('b',[]).controller("con"); 

module('c', ['a','b']) // controller from a overrides controller from b 
+0

ちょっと@PankajParkarコード例を追加しました。それは役に立ちますか? – axsauze

+0

まったく同じことをするコントローラが2つあるべきではありません。お互いに区別するために、わかりやすい名前を付けてください。 – rgvassar

+2

モジュール 'c'はすべてをそれ自身の名前空間に結合します。同じ名前を持つすべてのコンポーネントは、そのうちの1つを参照するだけです。あなたの最善の策は 'aCon'や' bCon'のようにあなたのコントローラ名に接頭辞を付けることです。それは[既知のもの](http://stackoverflow.com/questions/17862209/how-to-use-two-angularjs-services-with-same-name-from-different-modules)です。 – Jorg

答えて

2

これを回避する方法は何ですか? axs例えばのようなもので

プレフィックスあなたコントローラ名axsCon

注:これはAngular1デザインの問題です。そのすべてのグローバル。実際には、のディレクティブはすべてグローバルでもあり、その名前にもプレフィックスを付ける必要があります。

関連する問題