You are currently viewing the Beta version of the documentation.
refresh
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
app/actions.ts
'use server'
import { refresh } from 'next/cache'
import { redirect } from 'next/navigation'
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()
}
Error when used outside Server Actions
app/api/posts/route.ts
import { refresh } from 'next/cache'
export async function POST() {
// This will throw an error
refresh()
}
Was this helpful?