Merge pull request #1384 from ealmloff/new-in-scope-signals
Expose new_in_scope for signals
This commit is contained in:
1 file changed
+15
@@ -145,6 +145,21 @@ impl<T: 'static> Signal<T> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Create a new signal with a custom owner scope. The signal will be dropped when the owner scope is dropped instead of the current scope.
|
||||||
|
pub fn new_in_scope(value: T, owner: ScopeId) -> Self {
|
||||||
|
Self {
|
||||||
|
inner: CopyValue::new_in_scope(
|
||||||
|
SignalData {
|
||||||
|
subscribers: Default::default(),
|
||||||
|
effect_subscribers: Default::default(),
|
||||||
|
update_any: schedule_update_any().expect("in a virtual dom"),
|
||||||
|
value,
|
||||||
|
},
|
||||||
|
owner,
|
||||||
|
),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// Get the scope the signal was created in.
|
/// Get the scope the signal was created in.
|
||||||
pub fn origin_scope(&self) -> ScopeId {
|
pub fn origin_scope(&self) -> ScopeId {
|
||||||
self.inner.origin_scope()
|
self.inner.origin_scope()
|
||||||
|
|||||||
Reference in new issue
Block a user