StaleTimes(実験的機能)
警告:
staleTimes
設定は実験的機能です。この設定方法は将来変更される可能性があります。
staleTimes
は、クライアントルーターキャッシュの無効化期間を設定できる実験的機能です。
この設定オプションは v14.2.0-canary.53 以降で利用可能です。
実験的機能を有効にし、カスタムの再検証時間を設定するには、実験的フラグ staleTimes
を設定します:
/** @type {import('next').NextConfig} */
const nextConfig = {
experimental: {
staleTimes: {
dynamic: 30,
static: 180,
},
},
}
module.exports = nextConfig
static
と dynamic
プロパティは、異なるタイプのリンクプリフェッチに基づいて時間(秒単位)を対応させます。
dynamic
プロパティは、ページが静的に生成されていない場合、または完全にプリフェッチされていない場合(つまり、prefetch= でない場合)に使用されます。- デフォルト: 0秒(キャッシュされない)
static
プロパティは、静的に生成されたページ、またはLink
のprefetch
プロップがtrue
に設定されている場合、あるいはrouter.prefetch
を呼び出した場合に使用されます。- デフォルト: 5分
知っておくと便利:
- ローディング境界は、この設定で定義された
static
期間中に再利用可能と見なされます。- これは部分レンダリングには影響しません。つまり、共有レイアウトはナビゲーションごとに自動的に再取得されず、変更されるページセグメントのみが対象となります。
- これは戻る/進むキャッシュの動作を変更せず、レイアウトシフトを防ぎ、ブラウザのスクロール位置を保持します。
クライアントルーターキャッシュについて詳しくはこちらをご覧ください。
バージョン履歴
バージョン | 変更内容 |
---|---|
v14.2.0 | 実験的機能 staleTimes が導入されました |