04 · 实验 F
静态 vs 动态 对比
同一数据源、同一页面里,一边裸取数(动态)、一边走缓存(静态),直观对比静态与动态的差异。
裸取数(动态,ƒ)
时间:2026-09-22T13:09:16.156Z
每次请求都重新执行,刷新时时间变。
缓存取数(静态,○)
时间:2026-09-22T13:09:16.312Z
构建后冻结,刷新时时间不变。
动态侧随机数
0.6793333858912125
静态侧随机数
0.9141204082485732
怎么观察(必须生产模式)
pnpm build:本页标记为ƒ(Dynamic)—— 因为这里显式写了export const dynamic = "force-dynamic",让页面每次请求都重新渲染。pnpm start后刷新:左侧(裸取数)时间每次变,右侧(缓存取数)时间不变 —— 右侧数据进了unstable_cache数据缓存,即使页面动态渲染也命中。
关键认知
动态渲染 ≠ 不缓存数据。这里页面是动态的(每次重新渲染),但右侧数据走了 unstable_cache,所以数据仍被缓存、跨请求复用。这正是"动态页面 + 缓存数据"的组合, 也呼应 4.4 里"退出完整路由缓存不影响数据缓存"这一条。