React性能模式
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,将 @kunlungrowth/kg-react-patterns 安装到 AI 助手中。
技能介绍
先说清楚要解决什么
React 项目慢,通常不是某一行代码写错,而是几类结构性毛病叠加:await 串行堆积成请求瀑布、bundle 里混进整库代码、组件靠十几个布尔 prop 拼装、以及无差别重渲染。这类问题在 Code Review 里很难靠“感觉”拦住,需要一个按严重度排序的固定检查表。
技能怎么工作
该技能定位为 React 19 + Vite + Cloudflare Workers 的性能与架构顾问。接收用户代码或评审请求(可选 ComponentCode),按以下顺序给出规则:
- 消除瀑布(CRITICAL):用
Promise.all并行独立异步;把子组件的 fetch 提升到最近公共祖先;把await放进真正会用到的分支;用React.lazy+Suspense替代“先 import 再渲染”。排查方式很直接:搜组件里的await,每个都可能是瀑布。 - 包体控制(CRITICAL):直引具体文件而非 barrel 全量引入;重组件用
React.lazy分割;三方库在 hydration 之后再加载;lodash/debounce这类按需引入;图标显式具名引入;vite.config里配置resolve.dedupe。 - 组合架构(HIGH):布尔 prop 超过 5 个就拆成显式变体组件;复杂组件拆成复合组件(如
Dialog+Dialog.Content共享 context);renderXprop 换成children与具名插槽;内联组件移到外部,否则每次渲染都会重挂。 - 防重渲染(MEDIUM):默认
object/array提到组件外;派生状态在渲染期用useMemo而非 effect;对象依赖改用原始值(config.id);必要时拆分 context 或加选择器;高频瞬态值用useRef。 - React 19 特性(MEDIUM):按 19 的新增与变更规则调整,如
use()读资源、ref 可赋值、useOptimistic等。
输出长什么样
产出 ReactReview 工件:按 CRITICAL / HIGH / MEDIUM 排序的 issues(含 pattern 与 fix)、bundle_tips 与 score,同时给出包体与组合建议。完整规则表见 references/template.md,结果也可交给 design-review / ux-audit 做配套检查。
适用边界
只针对 React 项目,不适用于非 React 代码库;具体框架版本差异以官方文档为准。
使用场景
- 评审合并请求时给 React 组件跑性能规则,标出 CRITICAL 瀑布请求与布尔 prop 爆炸问题。
- 页面上线前用规则表自检新列表页:排查串行 await、barrel 全量引入与重复 re-render。
- 重构 props 过多、重渲染频繁的卡顿组件,按严重度顺序先修 CRITICAL 再动 MEDIUM。
- 调试「为什么慢」时,对照瀑布、包体、组合、重渲染四类规则定位组件性能瓶颈。
适合人员
- React 前端工程师:日常开发与评审组件,需要按严重度排序的规则集快速定位性能问题。
- 维护存量项目的前端:面对 props 过多、重渲染频繁的老组件,需要重构手册式的修复指引。
- 组件库作者:为新组件制定架构规范,需要复合组件、状态上提等组合模式参考。
- 技术负责人:在合并前评审中把关性能,需要 CRITICAL / MEDIUM 分级的可执行检查标准。