staleTimes

staleTimes — это экспериментальная функция, которая позволяет кэшировать сегменты страниц в клиентском кэше роутера (Client Router Cache).

Вы можете включить эту экспериментальную функцию и задать пользовательские времена ревалидации, установив экспериментальный флаг staleTimes:

next.config.js
/** @type {import('next').NextConfig} */
const nextConfig = {
  experimental: {
    staleTimes: {
      dynamic: 30,
      static: 180,
    },
  },
}

module.exports = nextConfig

Свойства static и dynamic соответствуют периодам времени (в секундах) для разных типов префетчинга ссылок (link prefetching).

  • Свойство dynamic используется, когда страница не статически сгенерирована и не полностью префетчена (например, с prefetch={true}).
    • По умолчанию: 0 секунд (не кэшируется)
  • Свойство static используется для статически сгенерированных страниц или когда свойство prefetch компонента Link установлено в true, либо при вызове router.prefetch.
    • По умолчанию: 5 минут

Полезно знать:

Подробнее о клиентском кэше роутера можно узнать здесь.

История версий

ВерсияИзменения
v15.0.0Значение по умолчанию для dynamic staleTimes изменено с 30 секунд на 0 секунд.
v14.2.0Добавлена экспериментальная функция staleTimes.