私は適度なサイズの AngularJS アプリを使用していますが、BDD が最近失敗し始めています。Firefox でのサイトの最初のロード (つまり、ページのリロード) 後に NG-View がレンダリングされるため、失敗していることが判明しました。
関数 () { HTML を返します。}
このためのhtmlは
<div data-ng-view="">
<span class="ng-scope">function () { return html; }</span>
</div>
ページをリロードすることで、Firefox でこのエラーを簡単に再現できますが、IE7 モードの Chrome/IE10 および IE10 では再現できません。
アプリのデバッグが正常に「起動」している場合 - 検索データなどを取得するためにいくつかのサービス呼び出しを行い、サービス、ディレクティブを登録し、コントローラーをロードします。
ページがこの状態にあるとき、私は実行できます
angular.element($0).scope()
コンソールで、スコープを確認します
<html data-ng-controller="app.controller">
アプリがこの状態にあるとき、コンソールにエラーはありません。デバッガーをエラーで一時停止するように設定すると、jquery-min で 1 つのエラーが発生し、他には何も発生しません。
どんなアイデアでも大歓迎です。必要に応じて、ルーティングなどの特定の領域にコード サンプルを投稿することもできます。
*編集*
この問題は、この google グループのコードを使用して controllers/html を動的にロードすることに関連していました。
https://groups.google.com/forum/#!msg/angular/rs1dj097oHA/cPwPZfLvX4EJ
コードの修正はスレッドで確認できます。
angularが「routeDefinition.template」を処理する方法に深刻な問題があると感じているため、回答としてマークしていません。そうしないと、htmlまたは関数全体の印刷が常に表示されます-一見ランダムではありませんスイッチング。
routeDefinition.template = function () {
return html;
};
乾杯