Skip to content

Commit e5579fd

Browse files
committed
WIP
1 parent 3ee25bb commit e5579fd

File tree

1 file changed

+7
-2
lines changed
  • packages/svelte/src/internal/client/reactivity

1 file changed

+7
-2
lines changed

packages/svelte/src/internal/client/reactivity/sources.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -262,9 +262,10 @@ export function update_pre(source, d = 1) {
262262
/**
263263
* @param {Value} signal
264264
* @param {number} status should be DIRTY or MAYBE_DIRTY
265+
* @param {boolean} partial should skip async/block effects
265266
* @returns {void}
266267
*/
267-
export function mark_reactions(signal, status) {
268+
export function mark_reactions(signal, status, partial = false) {
268269
var reactions = signal.reactions;
269270
if (reactions === null) return;
270271

@@ -284,10 +285,14 @@ export function mark_reactions(signal, status) {
284285
continue;
285286
}
286287

288+
if (partial && (flags & (EFFECT_ASYNC | BLOCK_EFFECT)) !== 0) {
289+
continue;
290+
}
291+
287292
set_signal_status(reaction, status);
288293

289294
if ((flags & DERIVED) !== 0) {
290-
mark_reactions(/** @type {Derived} */ (reaction), MAYBE_DIRTY);
295+
mark_reactions(/** @type {Derived} */ (reaction), MAYBE_DIRTY, partial);
291296
} else {
292297
schedule_effect(/** @type {Effect} */ (reaction));
293298
}

0 commit comments

Comments
 (0)