メインコンテンツまでスキップ

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_noStorefetchcache: 'no-store' と同等です
  • unstable_noStoreexport const dynamic = 'force-dynamic' より優れており、より細かくコンポーネントごとに使用できます
  • unstable_cache 内で unstable_noStore を使用しても、静的生成を解除することはありません。代わりに、キャッシュ設定に委ねて結果をキャッシュするかどうかを判断します。

使用法

fetchcache: '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(...);
...
}

バージョン履歴

VersionChanges
v14.0.0unstable_noStore が導入されました