serverComponentsHmrCache

Экспериментальная опция serverComponentsHmrCache позволяет кэшировать ответы fetch в серверных компонентах при обновлениях через Hot Module Replacement (HMR) в режиме локальной разработки. Это приводит к более быстрым ответам и снижению затрат на платные API-вызовы.

По умолчанию кэш HMR применяется ко всем запросам fetch, включая те, где указана опция cache: 'no-store'. Это означает, что некэшированные запросы не будут показывать свежие данные между обновлениями HMR. Однако кэш будет очищаться при навигации или полной перезагрузке страницы.

Вы можете отключить кэш HMR, установив serverComponentsHmrCache в false в файле next.config.js:

import type { NextConfig } from 'next'

const nextConfig: NextConfig = {
  experimental: {
    serverComponentsHmrCache: false, // по умолчанию true
  },
}

export default nextConfig
/** @type {import('next').NextConfig} */
const nextConfig = {
  experimental: {
    serverComponentsHmrCache: false, // по умолчанию true
  },
}

module.exports = nextConfig

Полезно знать: Для лучшей наблюдательности рекомендуем использовать опцию logging.fetches, которая логирует попадания и промахи кэша fetch в консоли во время разработки.