revalidateTag
revalidateTag
vous permet de purger les données en cache à la demande pour un tag de cache spécifique.
Bon à savoir :
revalidateTag
est disponible dans les deux environnements d'exécution Node.js et Edge.revalidateTag
n'invalide le cache que lorsque le chemin est visité ensuite. Cela signifie qu'appelerrevalidateTag
avec un segment de route dynamique ne déclenchera pas immédiatement de nombreuses revalidations à la fois. L'invalidation ne se produit que lorsque le chemin est visité à nouveau.
Paramètres
revalidateTag(tag: string): void;
tag
: Une chaîne de caractères représentant le tag de cache associé aux données que vous souhaitez revalider. Doit contenir 256 caractères ou moins. Cette valeur est sensible à la casse.
Vous pouvez ajouter des tags à fetch
comme suit :
fetch(url, { next: { tags: [...] } });
Valeur retournée
revalidateTag
ne retourne aucune valeur.
Exemples
Action serveur
'use server'
import { revalidateTag } from 'next/cache'
export default async function submit() {
await addPost()
revalidateTag('posts')
}
'use server'
import { revalidateTag } from 'next/cache'
export default async function submit() {
await addPost()
revalidateTag('posts')
}
Gestionnaire de route
import { NextRequest } from 'next/server'
import { revalidateTag } from 'next/cache'
export async function GET(request: NextRequest) {
const tag = request.nextUrl.searchParams.get('tag')
revalidateTag(tag)
return Response.json({ revalidated: true, now: Date.now() })
}
import { revalidateTag } from 'next/cache'
export async function GET(request) {
const tag = request.nextUrl.searchParams.get('tag')
revalidateTag(tag)
return Response.json({ revalidated: true, now: Date.now() })
}