用途:在用户询问 React、React 组件、React Hooks、useState、useEffect、JSX、React 模式与最佳实践时,提供构建 React 应用的现代模式指导。
主要能力:
- Hooks 参考:列出 useState(局部状态)、useReducer(复杂状态)、useEffect(副作用)、useContext、useRef、useMemo、useCallback、useLayoutEffect、useId 的用途与适用场景;并给出 Hook 规则:只在顶层调用、只在 React 函数中调用、自定义 Hook 以 use 命名。
- 组件模式:展示型、容器型、复合组件、Render Props、自定义 Hooks、HOC(旧模式,建议改用 Hooks)。
- 状态管理选型:useState、useReducer、Context、Zustand、Redux Toolkit、React Query/TanStack、Jotai/Recoil 的适用场景与权衡;强调服务端状态(API 数据)与客户端状态(UI 状态)应分开管理,服务端状态用 React Query。
- useEffect 模式:依赖数组为空只运行一次、指定依赖变化时运行、省略依赖每次渲染运行、返回清理函数用于订阅与定时器。
- 常见陷阱与解决:无限循环、过期闭包、竞态条件、缺失依赖。
- 性能优化:React.memo、useMemo、useCallback、懒加载、虚拟化,并强调先用 React DevTools Profiler 测量,不要过早优化。
- 条件渲染、表单处理(受控、非受控、React Hook Form、Formik)、项目结构目录建议与最佳实践。
使用方式:该技能以参考文档形式提供,按主题查阅对应表格与要点即可;资料未提供具体安装命令或调用步骤。
适用场景:React 组件编写、Hooks 使用、状态管理方案选择、性能调优、项目结构规划。
限制:资料为模式与选型指导,未提供版本要求、收费信息、平台限制或完整代码示例;部分内容(如 Zustand、Redux Toolkit、React Query 等)仅作选型说明,未给出具体用法细节。