diff --git a/packages/svelte/src/internal/client/reactivity/sources.js b/packages/svelte/src/internal/client/reactivity/sources.js index 7db9dc49d3..7495b7ef6e 100644 --- a/packages/svelte/src/internal/client/reactivity/sources.js +++ b/packages/svelte/src/internal/client/reactivity/sources.js @@ -225,6 +225,8 @@ export function simple_set(source, value, should_proxy = false, needs_previous = source.v = new_value; + source.o?.onchange?.(); + return new_value; } diff --git a/packages/svelte/tests/runtime-runes/samples/state-onchange/main.svelte b/packages/svelte/tests/runtime-runes/samples/state-onchange/main.svelte index 11d102682a..565e8477dc 100644 --- a/packages/svelte/tests/runtime-runes/samples/state-onchange/main.svelte +++ b/packages/svelte/tests/runtime-runes/samples/state-onchange/main.svelte @@ -37,7 +37,7 @@ constructor(){ - this.#in_constructor++; + this.#in_constructor = 42; this.#in_constructor_proxy.count++; } }