useEffectEvent

把「Effect 里的事件」单独拿出来:它总能读到最新值,但不会因为你依赖了它就重连、重启计时器。19.2 起稳定。

useId

给无障碍属性生成成对且唯一的 id。它由组件在树里的位置算出,服务端与客户端结果一致,水合不会错位。

useImmer

用可变写法产出不可变状态:改的是草稿,拿到的是新对象。来自第三方的 use-immer 包,不在 React 官方 API 里。

useInsertionEffect

它给 CSS-in-JS 库作者用,保证样式标签在其他 Effect 之前插好。官方明确不推荐运行时注入,业务代码里基本用不到它。

useLayoutEffect

和 useEffect 只差运行时机:它跑在 DOM 变更之后、浏览器绘制之前。需要先量尺寸再改样式时用它,别拿它发请求。

useMemo

缓存一次计算的结果,依赖没变就不再重算。React Compiler 已经能自动做这件事,手写只留给量出来确实慢的计算。