unstable_noStore
バージョン 15 では、unstable_noStore の代わりに connection を使用することを推奨します。
unstable_noStore は、静的レンダリングを明示的にオプトアウトし、特定のコンポーネントがキャッシュされないようにするために使用できます。
import { unstable_noStore as noStore } from 'next/cache';
export default async function ServerComponent() {
noStore();
const result = await db.query(...);
...
}
Good to know:
unstable_noStoreは、fetchのcache: 'no-store'と同等ですunstable_noStoreは、より細かく、コンポーネントごとに使用できるため、export const dynamic = 'force-dynamic'よりも推奨されます
unstable_cache内でunstable_noStoreを使用しても、静的生成をオプトアウトすることはありません。代わりに、キャッシュ設定に従って結果をキャッシュするかどうかを決定します。
使用法
fetch に cache: 'no-store' や next: { revalidate: 0 } などの追加オプションを渡したくない場合、または fetch が利用できない場合には、これらのすべてのユースケースの代わりに noStore() を使用できます。
import { unstable_noStore as noStore } from 'next/cache';
export default async function ServerComponent() {
noStore();
const result = await db.query(...);
...
}
バージョン履歴
| バージョン | 変更内容 |
|---|---|
v15.0.0 | unstable_noStore は connection に対して非推奨になりました。 |
v14.0.0 | unstable_noStore が導入されました。 |