2016-05-21 4 views
0

私は、ローエンドのPCで非常に遅いアプリを持っており、パフォーマンスを監視するためにBatarangをダウンロードしました。ヘッダのみとサイドバーを持っていることを、空のページでダイジェストサイクル実行のパフォーマンスモニタ

、私はこれを参照してください。 enter image description here

意味を、サイクルが常に実行されています。なぜ私はページを見ているだけなので、何かをクリックしたり、物を動かしたりしていないので、わからない。 enter image description here

事を変えない、ダイジェストが実行されているすべての20〜30秒:

と異なるAngularJSアプリ(ない鉱山)で

は、私はこれを参照してください。

なぜこのようなことが起こりますか?どのウォッチャーがダイジェストサイクルを開始したかを確認する方法はありますか?

EDIT:

すべてのダーティウォッチャーを印刷し、汚れている表現であるかを確認する方法はありますか?

私はランダムウォッチャー印刷:それは表現

+0

どこかに$タイムアウトがあるかどうかをチェックしてください。また、$ rootScope.applyのすべてのコールをデバッグしてください。 – Marcus

+0

仕上げに30秒かかるため、30秒ごとに実行する2番目のチャートのようです。 – pgreen2

+0

@pgreen2いいえ..それが終わると、それはそれを表示し続けるでしょう – Amit

答えて

0

ダイジェストサイクルはスコープで、前の消化によって引き起こされたすべての変更のすべてのトリガーの変更で実行されていると言っていません

JSON.stringify(getWatchers()[2]) "{"last":3,"eq":false}"

を変更が検出されなくなるまで繰り返す。

Ex。 コントローラーに値を変更するクリックハンドラーがありますが、この変更は別の場所で監視される可能性があるため、ダイジェストは再び実行されます。

+0

OK、変更された内容を確認する方法はありますか?私は 'eq'がfalseであるすべてのウォッチャーを表示しましたが、式 – Amit

関連する問題