06 · 实验 D

读 next build 产物

pnpm build 后,日志会打印每个路由的渲染标记,.next 目录里能看到产物。学会读它们,才能定位「为什么这个页面是静态/动态」「哪里 JS 大」。

build 日志标记含义

Static

静态预渲染(构建时渲染一次,直接返回 HTML)

SSG

用 generateStaticParams 生成的静态 HTML

ƒ

Dynamic

按需服务端渲染(每次请求渲染)

本项目(Next 16)实测样例

/lab/data/fetch-cache
/lab/data/fetch-defaultƒ
/lab/rendering/isr○ · 10s
/notes/1
/api/tagsƒ

怎么用 build 产物做性能定位

  • 想看某页是不是静态:pnpm build 后在日志找它的标记, / 是静态、ƒ 是动态。
  • 静态页产物在 .next/server/app/... 下的 .html; 动态页每次请求才渲染。
  • 想找 JS 体积:生产构建后看 .next/static/chunks/*.js,或跑 bundle 分析插件定位大依赖。
  • 判断"为什么变动态":回看第 1 章 1.6(动态 API / fetch 不缓存 / force-dynamic)和第 4 章(缓存失效)。