effect-outside-of-runtime

This commit is contained in:
Evan Almloff committed 2023-10-17 12:56:12 -05:00
1 parent 509dca97e6
commit 050add21d7
3 files changed
+30 -11

No files matched your search

+4 -2
View File
@@ -78,19 +78,21 @@ pub fn selector<R: PartialEq>(mut f: impl FnMut() -> R + 'static) -> ReadOnlySig
let effect = Effect {
source: current_scope_id().expect("in a virtual dom"),
callback: CopyValue::invalid(),
effect_stack: get_effect_stack(),
};
{
get_effect_stack().effects.borrow_mut().push(effect);
get_effect_stack().effects.write().push(effect);
}
state.inner.value.set(SignalData {
subscribers: Default::default(),
effect_subscribers: Default::default(),
update_any: schedule_update_any().expect("in a virtual dom"),
value: f(),
effect_stack: get_effect_stack(),
});
{
get_effect_stack().effects.borrow_mut().pop();
get_effect_stack().effects.write().pop();
}
effect.callback.value.set(Box::new(move || {