pub trait HookedElement:
UseStateHook
+ UseEffectHook
+ UseMemoHook
+ UseRefHook
+ UseCallbackHook {
// Required methods
fn _hooks_ref(&self) -> &RefCell<Vec<Box<dyn Hook>>>;
fn _hook_index(&self) -> usize;
fn _set_hook_index(&self, index: usize);
fn _prev(&self) -> usize;
fn _set_prev(&self, prev: usize);
// Provided methods
fn _next_hook_index(&self) -> usize { ... }
fn _reset(&self) { ... }
}Expand description
HookedElement trait - 管理组件的hooks 使用内部可变性模式,使得hooks可以在&self上调用
自动实现了 UseStateHook, UseEffectHook, UseMemoHook
Required Methods§
Sourcefn _hook_index(&self) -> usize
fn _hook_index(&self) -> usize
Get the current hook index
Sourcefn _set_hook_index(&self, index: usize)
fn _set_hook_index(&self, index: usize)
Set the hook index
Provided Methods§
Sourcefn _next_hook_index(&self) -> usize
fn _next_hook_index(&self) -> usize
Increment hook index and return the old value
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.