diff --git a/packages/svelte/src/internal/client/reactivity/sources.js b/packages/svelte/src/internal/client/reactivity/sources.js index 32b93a2b0a..746d426aca 100644 --- a/packages/svelte/src/internal/client/reactivity/sources.js +++ b/packages/svelte/src/internal/client/reactivity/sources.js @@ -238,15 +238,6 @@ export function internal_set(source, value) { source.v = value; source.wv = increment_write_version(); - var onchange = source.o?.onchange; - if (onchange) { - if (onchange_batch) { - onchange_batch.add(onchange); - } else { - onchange(); - } - } - if (DEV && tracing_mode_flag) { source.updated = get_stack('UpdatedAt'); if (active_effect != null) { @@ -274,6 +265,15 @@ export function internal_set(source, value) { } } + var onchange = source.o?.onchange; + if (onchange) { + if (onchange_batch) { + onchange_batch.add(onchange); + } else { + onchange(); + } + } + if (DEV && inspect_effects.size > 0) { const inspects = Array.from(inspect_effects); var previously_flushing_effect = is_flushing_effect;