From ff8cf80fb54feffa06ae9d37fdf010e0262c0d69 Mon Sep 17 00:00:00 2001 From: Shirasawa <764798966@qq.com> Date: Sun, 1 Mar 2026 03:09:43 +0800 Subject: [PATCH] fix: fix memory leaking of Notes.svelte (#21963) --- src/lib/components/notes/Notes.svelte | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/lib/components/notes/Notes.svelte b/src/lib/components/notes/Notes.svelte index 29487ece9a..0aa63075f0 100644 --- a/src/lib/components/notes/Notes.svelte +++ b/src/lib/components/notes/Notes.svelte @@ -288,7 +288,7 @@ dragged = false; }; - onMount(async () => { + onMount(() => { viewOption = localStorage?.noteViewOption ?? null; displayOption = localStorage?.noteDisplayOption ?? null; @@ -298,18 +298,16 @@ dropzoneElement?.addEventListener('dragover', onDragOver); dropzoneElement?.addEventListener('drop', onDrop); dropzoneElement?.addEventListener('dragleave', onDragLeave); - }); - onDestroy(() => { - clearTimeout(searchDebounceTimer); - console.log('destroy'); - const dropzoneElement = document.getElementById('notes-container'); + return () => { + clearTimeout(searchDebounceTimer); - if (dropzoneElement) { - dropzoneElement?.removeEventListener('dragover', onDragOver); - dropzoneElement?.removeEventListener('drop', onDrop); - dropzoneElement?.removeEventListener('dragleave', onDragLeave); - } + if (dropzoneElement) { + dropzoneElement?.removeEventListener('dragover', onDragOver); + dropzoneElement?.removeEventListener('drop', onDrop); + dropzoneElement?.removeEventListener('dragleave', onDragLeave); + } + }; });