跳到内容
配置next.config.jsserverComponentsHmrCache

serverComponentsHmrCache

此功能目前处于实验阶段,可能会有所更改,不建议用于生产环境。欢迎试用并在 GitHub 上分享您的反馈。

实验性的 serverComponentsHmrCache 选项允许你在本地开发中,在热模块替换(HMR)刷新期间缓存服务器组件中的 fetch 响应。这可以带来更快的响应速度,并减少计费 API 调用的成本。

默认情况下,HMR 缓存适用于所有 fetch 请求,包括那些带有 cache: 'no-store' 选项的请求。这意味着未缓存的请求在 HMR 刷新之间将不会显示最新数据。但是,在导航或完全页面重新加载时,缓存将被清除。

你可以通过在 next.config.js 文件中将 serverComponentsHmrCache 设置为 false 来禁用 HMR 缓存。

next.config.ts
import type { NextConfig } from 'next'
 
const nextConfig: NextConfig = {
  experimental: {
    serverComponentsHmrCache: false, // defaults to true
  },
}
 
export default nextConfig

须知:为了更好的可观察性,我们建议使用 logging.fetches 选项,该选项会在开发过程中在控制台中记录 fetch 缓存命中和未命中情况。