revalidatePath
revalidatePath
ermöglicht es Ihnen, zwischengespeicherte Daten bei Bedarf für einen bestimmten Pfad zu löschen.
Wissenswert:
revalidatePath
invalidiert den Cache nur, wenn der angegebene Pfad das nächste Mal aufgerufen wird. Das bedeutet, dass der Aufruf vonrevalidatePath
mit einem dynamischen Routensegment nicht sofort viele Revalidierungen auslöst. Die Invalidierung erfolgt erst beim nächsten Aufruf des Pfads.- Derzeit invalidiert
revalidatePath
alle Routen im Client-seitigen Router-Cache, wenn es in einer Server-Aktion verwendet wird. Dieses Verhalten ist temporär und wird in Zukunft aktualisiert, um nur den spezifischen Pfad zu betreffen.- Die Verwendung von
revalidatePath
invalidiert nur den spezifischen Pfad im Server-seitigen Route-Cache.
Parameter
path
: Entweder ein String, der den Dateisystempfad der zu revalidierenden Daten darstellt (z.B./product/[slug]/page
), oder das literale Routensegment (z.B./product/123
). Muss weniger als 1024 Zeichen lang sein. Die Groß-/Kleinschreibung wird beachtet.type
: (optional) String'page'
oder'layout'
, um den Typ des zu revalidierenden Pfads anzugeben. Wennpath
ein dynamisches Segment enthält (z.B./product/[slug]/page
), ist dieser Parameter erforderlich. Wenn path sich auf das literale Routensegment bezieht, z.B./product/1
für eine dynamische Seite (z.B./product/[slug]/page
), solltetype
nicht angegeben werden.
Rückgabewert
revalidatePath
gibt keinen Wert zurück.
Beispiele
Revalidierung einer spezifischen URL
Dies revalidiert eine spezifische URL beim nächsten Seitenaufruf.
Revalidierung eines Seitenpfads
Dies revalidiert alle URLs, die der angegebenen page
-Datei entsprechen, beim nächsten Seitenaufruf. Dies invalidiert nicht Seiten unterhalb der spezifischen Seite. Beispielsweise würde /blog/[slug]
nicht /blog/[slug]/[author]
invalidieren.
Revalidierung eines Layout-Pfads
Dies revalidiert alle URLs, die der angegebenen layout
-Datei entsprechen, beim nächsten Seitenaufruf. Dadurch werden auch Seiten unterhalb mit demselben Layout beim nächsten Aufruf revalidiert. Im obigen Beispiel würde /blog/[slug]/[another]
ebenfalls beim nächsten Aufruf revalidiert werden.
Revalidierung aller Daten
Dies löscht den Client-seitigen Router-Cache und revalidiert den Data Cache beim nächsten Seitenaufruf.