メモリ リークを避けるために、すべての MutationObserver が切断されていることをテストします。

WBOY
リリース: 2024-08-22 22:34:02
オリジナル
710 人が閲覧しました

Test that every MutationObserver is disconnected to avoid memory leaks

MutationObserver は、DOM 内の変更を監視し、それに応答する便利なメカニズムです。

MutationObserver インターフェースは、DOM ツリーに加えられた変更を監視する機能を提供します。

テーマクラスの変更を監視する例を次に示します。

リーリー

ただし、切断を忘れると、MutationObserver 関数内からのアクセス内容によってはメモリ リークにさらされる可能性があります。

オブザーバーの接続を解除していることを検証できるテストがあれば素晴らしいと思いませんか?

コードの自動検証

DOM を監視しているすべての MutationObserver も切断されていることを検証できることがわかりました。 (MutationObservers を設定するために異なるコードパスを実行する必要がある場合は、複数のテストが必要になる場合があります)

そのアイデアは、グローバル MutationObserver をその観察メソッドと切断メソッドのサブモックでモックすることです。モックが返される前に、テスト実行の最後にすべてのインスタンスを検証できるように、モックを配列に記録します。

リーリー

このようにして、テスト中にセットアップされた各 MutationObserver もテスト終了時に切断されることを検証できます。


Stephen Cooper - AG Grid のシニア開発者
X @ScooperDev でフォローしてください

以上がメモリ リークを避けるために、すべての MutationObserver が切断されていることをテストします。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!