unstable_noStore

In Version 15 empfehlen wir die Verwendung von connection anstelle von unstable_noStore.

unstable_noStore kann verwendet werden, um deklarativ vom statischen Rendering (Static Rendering) abzuwählen und anzuzeigen, dass eine bestimmte Komponente nicht zwischengespeichert werden soll.

import { unstable_noStore as noStore } from 'next/cache';

export default async function ServerComponent() {
  noStore();
  const result = await db.query(...);
  ...
}

Wissenswert:

  • unstable_noStore entspricht cache: 'no-store' bei einem fetch
  • unstable_noStore wird gegenüber export const dynamic = 'force-dynamic' bevorzugt, da es granularer ist und auf Komponentenebene verwendet werden kann
  • Die Verwendung von unstable_noStore innerhalb von unstable_cache führt nicht zum Abwählen des statischen Generierens (Static Generation). Stattdessen wird die Cache-Konfiguration verwendet, um zu bestimmen, ob das Ergebnis zwischengespeichert werden soll oder nicht.

Verwendung

Wenn Sie es vorziehen, keine zusätzlichen Optionen an fetch zu übergeben, wie cache: 'no-store', next: { revalidate: 0 } oder in Fällen, in denen fetch nicht verfügbar ist, können Sie noStore() als Ersatz für all diese Anwendungsfälle verwenden.

import { unstable_noStore as noStore } from 'next/cache';

export default async function ServerComponent() {
  noStore();
  const result = await db.query(...);
  ...
}

Versionsverlauf

VersionÄnderungen
v15.0.0unstable_noStore zugunsten von connection als veraltet markiert.
v14.0.0unstable_noStore eingeführt.

On this page