hooks
hooks¶
React-style hooks for function components.
Hooks let function components hold state, run side effects, and memoize values without converting to class components. They work by maintaining a per-component-instance list of hook slots, accessed by call order.
Rules of hooks (same as React):
- Only call hooks at the top level of a function component.
- Do not call hooks inside loops, conditions, or nested functions.
- Do not call hooks outside of a function component's render.
HookRef
¶
Bases: Generic[T]
Mutable container returned by use_ref.
use_state(initial)
¶
Declare component-local state.
Returns (current_value, setter). The setter accepts a plain value
or an updater function::
count, set_count = use_state(0)
set_count(5) # set directly
set_count(lambda prev: prev+1) # updater
use_effect(fn, deps=None)
¶
Register a side-effect that runs after render.
deps=None— run after every render.deps=[]— run only on mount (cleanup runs on unmount).deps=[a,b]— run when a or b changes.
fn may return a cleanup callable.
use_memo(fn, deps)
¶
Memoize a computed value, recomputing only when deps change.
use_ref(initial=None)
¶
Create a mutable ref object that persists across renders.
use_callback(fn, deps)
¶
Memoize a callback, returning the same reference until deps change.