react-perf 是一套 React 与 Next.js 性能优化模式,用于在编写、审查或优化 React 代码时参考,适用于 Web 应用、Remotion 视频以及任何基于 React 的项目。资料按优先级把规则分为若干层级。
关键级(CRITICAL)包含两类问题。第一是消除请求瀑布:顺序 await 会让每个请求等待前一个完成,独立请求应改用 Promise.all 并行;同时应把 await 移到真正使用它的分支,去掉不必要的等待,并用 Suspense 边界流式输出内容。第二是控制打包体积:避免 barrel 导入(如从 @/components 整体导入),改为直接导入具体文件(如 @/components/ui/Button);用 next/dynamic 延迟加载重型组件;分析、日志类代码放到 hydration 之后加载;在 hover/focus 时预加载以提升体感速度。
高级(HIGH)聚焦服务端:用 React.cache() 在单次请求内去重,减少传给客户端的数据量,并通过调整组件结构让 fetch 并行化。
中级(MEDIUM)用于避免重渲染:只在回调中使用的 state 可改为 ref,避免订阅导致重渲染;把开销大的工作拆到 memo 组件;useState 初始值传函数实现惰性初始化;用 startTransition 分离非紧急更新;派生 state 在渲染期间计算而不是放进 effect。
低级(LOW)是 JavaScript 层面的细节:重复查找改用 Map/Set 获得 O(1) 复杂度;把 filter().map() 合并为一次循环;RegExp 在循环外创建;先检查 array.length 再做昂贵比较。
资料还说明 Remotion 中的 React:Remotion 视频组件同样是 React,因此上述原则同样适用,例如 interpolate() 每帧都会调用,开销大时应缓存;重型计算用 useMemo / useCallback;尽量减少离屏元素的渲染。
关于安装方式、具体命令、收费与平台支持等信息,资料中暂未提供。