summaryrefslogtreecommitdiff
path: root/packages/integrations/svelte/client.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations/svelte/client.js')
-rw-r--r--packages/integrations/svelte/client.js4
1 files changed, 3 insertions, 1 deletions
diff --git a/packages/integrations/svelte/client.js b/packages/integrations/svelte/client.js
index 0d07ff2ba..99612a580 100644
--- a/packages/integrations/svelte/client.js
+++ b/packages/integrations/svelte/client.js
@@ -14,7 +14,7 @@ export default (target) => {
try {
if (import.meta.env.DEV) useConsoleFilter();
- new Component({
+ const component = new Component({
target,
props: {
...props,
@@ -24,6 +24,8 @@ export default (target) => {
hydrate: client !== 'only',
$$inline: true,
});
+
+ element.addEventListener('astro:unmount', () => component.$destroy(), { once: true })
} catch (e) {
} finally {
if (import.meta.env.DEV) finishUsingConsoleFilter();