Skip to main content

HookedElement

Trait HookedElement 

Source
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§

Source

fn _hooks_ref(&self) -> &RefCell<Vec<Box<dyn Hook>>>

Get access to the hooks RefCell

Source

fn _hook_index(&self) -> usize

Get the current hook index

Source

fn _set_hook_index(&self, index: usize)

Set the hook index

Source

fn _prev(&self) -> usize

Get the previous hook count

Source

fn _set_prev(&self, prev: usize)

Set the previous hook count

Provided Methods§

Source

fn _next_hook_index(&self) -> usize

Increment hook index and return the old value

Source

fn _reset(&self)

Reset hook state at the start of render

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.

Implementors§