diff --git a/.changeset/cuddly-flowers-poke.md b/.changeset/cuddly-flowers-poke.md new file mode 100644 index 0000000000..bb47a70e83 --- /dev/null +++ b/.changeset/cuddly-flowers-poke.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: properly remove event listeners in Component's removeEventListener diff --git a/packages/svelte/src/runtime/internal/Component.js b/packages/svelte/src/runtime/internal/Component.js index a0b0f58172..bc2c83de3d 100644 --- a/packages/svelte/src/runtime/internal/Component.js +++ b/packages/svelte/src/runtime/internal/Component.js @@ -220,6 +220,12 @@ if (typeof HTMLElement === 'function') { this.$$l_u.delete(listener); } } + if (this.$$l[type]) { + const idx = this.$$l[type].indexOf(listener); + if (idx >= 0) { + this.$$l[type].splice(idx, 1); + } + } } async connectedCallback() {