该技能面向 React 19 应用的代码分割与懒加载,目标是减小初始包体积、加快首屏与后续页面加载。
主要能力:使用 React.lazy 动态导入组件,并配合 Suspense 提供加载占位;采用 Suspense 感知的 use() 解包 Promise;在 React Router 7.x 中按路由懒加载页面组件;用 IntersectionObserver 在元素进入视口时再加载,支持 rootMargin 提前预载;在 hover/focus 时预取路由数据与组件分包,并使用 modulepreload、prefetch 等提示;结合特性开关条件加载;配合 Error Boundary 处理加载失败;通过 Vite manualChunks 做 vendor 与功能拆分,并用 rollup-plugin-visualizer 分析包体。
使用方式:按资料中的模式编写动态 import 与 Suspense 边界;路由级拆分时由根级 Suspense 包裹 RouterProvider;滚动加载时以 IntersectionObserver 监听占位元素;预加载可绑定 onMouseEnter/onFocus。必要命令与配置保持资料原样。
适用场景:单页应用路由拆分、重组件(图表/编辑器/弹窗)懒加载、首屏以下内容延迟加载、基于权限或特性的条件加载、渐进式图片与媒体加载。
限制与反模式:不要懒加载小于 5KB 的小组件;缺少 Suspense 边界会抛错;不要在 render 内创建 lazy 组件;不要懒加载首屏关键内容;避免过度拆分造成过多请求;网络失败需错误边界。具体效果、收费与平台信息暂未提供。