bundle conditional
本地来源:Knowledge/World/项目/Practice/Claude-Skills/vercel-react-best-practices/rules/bundle-conditional.md
title: Conditional Module Loading impact: HIGH impactDescription: loads large data only when needed tags: bundle, conditional-loading, lazy-loading
Conditional Module Loading
Load large data or modules only when a feature is activated.
Example (lazy-load animation frames):
function AnimationPlayer({ enabled }: { enabled: boolean }) {
const [frames, setFrames] = useState<Frame[] | null>(null)
useEffect(() => {
if (enabled && !frames && typeof window !== 'undefined') {
import('./animation-frames.js')
.then(mod => setFrames(mod.frames))
.catch(() => setEnabled(false))
}
}, [enabled, frames])
if (!frames) return <Skeleton />
return <Canvas frames={frames} />
}
The typeof window !== 'undefined' check prevents bundling this module for SSR, optimizing server bundle size and build speed.
本文档为站内渲染。原始文件本地路径:saas/source/knowledge-world/Knowledge-World-项目-Practice-Claude-Skills-vercel-react-best--9bc84a.md(仅本地保留,不入库不部署)