hook 分类
一句话结论:Hooks 可以按“状态类、引用类、副作用类、性能优化类、并发/调度类”来理解;分类的目的不是背 API,而是理解它们落在哪个阶段执行。
1. 状态类
useState/useReducer:在 render 阶段计算新 stateuseSyncExternalStore:对外部 store 的一致性订阅(并发下重要)
2. 引用与上下文
useRef:跨渲染保持可变引用,不触发重渲染useContext:读取 context,并在变更时触发更新
3. 副作用
useEffect:commit 后异步执行(Passive)useLayoutEffect:DOM 变更后、绘制前同步执行(Layout)
4. 性能优化 / 并发相关
useMemo/useCallback:缓存计算/函数引用(注意不是“保证不重渲染”)useTransition/useDeferredValue:标记低优先级更新,改善交互响应