fix selector effect id

This commit is contained in:
Evan Almloff committed 2023-11-07 09:19:33 -06:00
1 parent 4e19f8f2be
commit e77c158636
3 files changed
+19 -2

No files matched your search

+5 -1
View File
@@ -160,7 +160,8 @@ pub fn maybe_sync_selector<R: PartialEq, S: Storage<SignalData<R>>>(
EFFECT_STACK.with(|stack| stack.effects.write().pop());
}
let invalid_id = state.inner.value.id();
let invalid_id = effect.id();
tracing::trace!("Creating effect: {:?}", invalid_id);
effect.inner.value.set(EffectInner {
callback: Box::new(move || {
let value = f();
@@ -174,6 +175,9 @@ pub fn maybe_sync_selector<R: PartialEq, S: Storage<SignalData<R>>>(
}),
id: invalid_id,
});
{
EFFECT_STACK.with(|stack| stack.effect_mapping.write().insert(invalid_id, effect));
}
ReadOnlySignal::new_maybe_sync(state)
}