diff --git a/packages/svelte/src/internal/client/context.js b/packages/svelte/src/internal/client/context.js index d2b5146783..9bf802b4b2 100644 --- a/packages/svelte/src/internal/client/context.js +++ b/packages/svelte/src/internal/client/context.js @@ -177,18 +177,20 @@ export function push(props, runes = false, fn) { */ export function pop(component) { if (component_context !== null) { - if (component !== undefined) { - component_context.x = component; - } + var effects = component_context.e; - const effects = component_context.e; if (effects !== null) { component_context.e = null; + for (var fn of effects) { create_user_effect(fn); } } + if (component !== undefined) { + component_context.x = component; + } + component_context.m = true; component_context = component_context.p;