アプリケーションに大量のメモリリークがありますが、原因はわかりません。背景は次のとおりです。
多くのリスナーは次のようにバインドされています。
$(element).on( "keyup"、function(){});
だから質問は
次のようにして、ディレクティブでこれらのリスナーのバインドを解除する必要がありますか?
scope.$on("$destroy", function() {
$(element).off();
});
ところで、通常、Webアプリケーションのメモリリークをどのように見つけますか? Chromeのプロファイルを使用しています(ここを参照 メモリパフォーマンスのプロファイリング )が、メモリリークが発生しているコードを追跡できませんでした。何か提案はありますか?
どうもありがとう!
Angularスコープdestroyのドキュメントは、DOMイベントを削除する必要があることを意味します。
http://docs.angularjs.org/api/ng.$rootScope.Scope#$destroy
AngularJSには$ destroy jQueryイベントもあり、要素がDOMから削除される前にDOMバインディングをクリーンアップするために使用できることに注意してください。