staleTimes
この機能は現在実験的であり、変更される可能性があります。本番環境での使用は推奨されません。お試しいただき、GitHubでフィードバックをお寄せください。
staleTimes は、クライアントサイドルーターキャッシュへのページセグメントのキャッシュを有効にする実験的な機能です。
実験的な staleTimes フラグを設定することで、この実験的な機能を有効にし、カスタムの再検証時間を指定できます。
next.config.js
/** @type {import('next').NextConfig} */
const nextConfig = {
experimental: {
staleTimes: {
dynamic: 30,
static: 180,
},
},
}
module.exports = nextConfigstatic および dynamic プロパティは、さまざまな種類のリンクプリフェッチに基づいた期間(秒単位)に対応します。
dynamicプロパティは、ページが静的に生成されておらず、完全にプリフェッチされていない場合(例:prefetch={true})に使用されます。- デフォルト: 0秒(キャッシュなし)
staticプロパティは、静的に生成されたページ、またはLinkのprefetchプロップがtrueに設定されている場合、またはrouter.prefetchを呼び出す場合に使用されます。- デフォルト: 5分
知っておくと良いこと
- Loading boundaries は、この設定で定義された
static期間において再利用可能と見なされます。- これは部分レンダリングには影響しません。**つまり、共有レイアウトはナビゲーションごとに自動的に再フェッチされるのではなく、変更されたページセグメントのみが再フェッチされます。**
- これは、レイアウトシフトを防ぎ、ブラウザのスクロール位置の損失を防ぐために、バック/フォワードキャッシュの動作を変更しません。
クライアントルーターキャッシュの詳細については、こちらをご覧ください。
バージョン履歴
| バージョン | 変更履歴 |
|---|---|
v15.0.0 | dynamic staleTimes のデフォルトは 30 秒から 0 秒に変更されました。 |
v14.2.0 | 実験的な staleTimes が導入されました。 |
役に立ちましたか?