Deduplicate reactive scope updates/Reset subscriptions on reruns/fix use memo double update (#2506)
* deduplicate effect updates * only subscribe to signals read in the current run of reactive scopes * subscribe to memo reads after recomputing the value
This commit is contained in:
1 parent
24d247dc85
commit
b6dc2a2230
18 files changed
+459
-250
No files matched your search
@@ -1,5 +1,6 @@
|
||||
use crate::{
|
||||
any_props::BoxedAnyProps, nodes::RenderReturn, runtime::Runtime, scope_context::Scope,
|
||||
any_props::BoxedAnyProps, nodes::RenderReturn, reactive_context::ReactiveContext,
|
||||
runtime::Runtime, scope_context::Scope,
|
||||
};
|
||||
use std::{cell::Ref, rc::Rc};
|
||||
|
||||
@@ -53,6 +54,7 @@ pub struct ScopeState {
|
||||
pub(crate) context_id: ScopeId,
|
||||
pub(crate) last_rendered_node: Option<RenderReturn>,
|
||||
pub(crate) props: BoxedAnyProps,
|
||||
pub(crate) reactive_context: ReactiveContext,
|
||||
}
|
||||
|
||||
impl Drop for ScopeState {
|
||||
|
||||
Reference in new issue
Block a user