refresh allows you to refresh the client router from within a Server Action.
Usage
refresh can only be called from within Server Actions. It cannot be used in Route Handlers, Client Components, or any other context.
Parameters
refresh(): void;
Returns
refresh does not return a value.
Examples
'use server'
import { refresh } from 'next/cache'
export async function createPost(formData: FormData) {
const title = formData.get('title')
const content = formData.get('content')
// Create the post in your database
const post = await db.post.create({
data: { title, content },
})
refresh()
}
'use server'
import { refresh } from 'next/cache'
export async function createPost(formData) {
const title = formData.get('title')
const content = formData.get('content')
// Create the post in your database
const post = await db.post.create({
data: { title, content },
})
refresh()
}
Error when used outside Server Actions
import { refresh } from 'next/cache'
export async function POST() {
// This will throw an error
refresh()
}
Source: docs/01-app/03-api-reference/04-functions/refresh.mdx