用途:为构建高性能 Nuxt 4 应用提供官方最佳实践指引,涵盖渲染策略、性能优化、数据获取、组件模式与性能剖析。
渲染策略:通过 nuxt.config.ts 的 routeRules 按路由分配渲染方式,如 prerender: true(构建时静态生成)、swr: N(服务端/代理缓存 N 秒并后台重新验证)、isr: N(CDN 缓存至下次部署)、ssr: false(仅浏览器渲染)、redirect、headers。默认推荐 Universal Rendering(SSR + 水合);可部署到 CDN 边缘(Cloudflare Workers、Vercel Edge、Netlify Edge),Nitro 支持,仅需更换构建预设。
组件:用 Lazy 前缀延迟非关键组件;Nuxt 3.16+ 支持懒水合,如 hydrate-on-visible、hydrate-on-idle、hydrate-on-interaction。避免滥用插件,非全局启动逻辑迁移到 composable 或工具函数。
数据获取:优先 useFetch 与 useAsyncData,可去重并在服务端序列化到页面 payload;避免用原始 $fetch 造成双重请求。composable 需在顶层同步调用,await 之后调用会丢失上下文。
性能:用 NuxtImg(需 @nuxt/image)替换 img,自动转 WebP/Avif、生成响应式尺寸,并始终设置 width/height 防止 CLS;用 @nuxt/fonts 自托管字体并生成回退指标;用 @nuxt/scripts 延迟加载第三方脚本,支持 trigger: 'manual' 与类型化代理;NuxtLink 支持 prefetchOn: 'interaction';Vue 层面可用 shallowRef、v-once、v-memo、computed。
自动导入:组件、composables、utils 自动导入,生产包仅含已用导出;server/utils 内也会自动导入;可用 #imports 显式导入。
常见陷阱:双重数据获取、插件阻塞水合、包体过大、图片布局偏移、字体未优化、第三方脚本拖累 INP、大对象深层响应式、await 后调用 composable、未使用依赖。
剖析流程:npx nuxi analyze 生成可视化树图;Nuxt DevTools 查看 Timeline/Render Tree;Chrome DevTools 看 LCP/CLS 与 Lighthouse;PageSpeed Insights 结合实验室与真实数据;WebPageTest 多地区测试。参考文件:references/performance.md、references/rendering.md。具体版本要求、部署平台费用与效果数据暂未提供。