1

全て、

私たちは AngularJS を使用してアプリを開発していますが、何度も Angular の実行またはコントローラーの読み込みの問題に 2 回遭遇し続けています。これは、コントローラーをテストするとき、より具体的には、ジャスミンの SpyOn で Testacular を使用するときに、もう少し邪魔になります (コードが実行される前にトリガーされるため)。それで、私たちの質問は、テストコードで回避策をハックする必要なしにコントローラーをインスタンス化するときにAngularが呼び出すことが保証されているコンストラクターまたはinitメソッドのようなものはありますか? ティア。

4

2 に答える 2

8

ルーターでコントローラーを指定している場合、テンプレートは ng-controller タグを介してコントローラーを指定する必要はありません。そうすることで、コントローラーの負荷が 2 倍になります。

于 2013-04-16T11:43:31.273 に答える
1

何か間違ったことをしていない限り、コントローラーを 2 回ロードするべきではありません。回避策をハックする必要はありません。

コントローラー (および/またはコントローラーに関連付けられているパーシャル) をどのようにロードしているかの具体例を提供したい場合があります。おそらくルーティングの問題があり、リクエストごとにビューが2回読み込まれるようです。

それがルーティング関連の問題であると仮定すると、人々があなたを助けるのを助けるためにあなたがより多くの情報を提供できない限り、または提供できるまで、このドキュメントを読むことをお勧めします. 「リダイレクト」および「HTML 5」モードに言及しているセクションに特に言及してください。

http://docs.angularjs.org/guide/dev_guide.services.$location

情報がほとんどないため、あなたの質問に答えることができませんが、おそらくそのリンクはあなた自身を助けるのに役立ちます. :)

于 2012-11-14T01:43:02.743 に答える