unstable_noStore
これはレガシーAPIであり、推奨されなくなりました。後方互換性のために引き続きサポートされています。
バージョン 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(...);
...
}知っておくと良いこと:
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 が導入されました。 |
役に立ちましたか?