refresh
refresh를 사용하면 Server Action 내부에서 client router를 새로 고침할 수 있습니다.
Usage
refresh는 오직 Server Actions 내부에서만 호출할 수 있습니다. Route Handlers, Client Components, 또는 다른 어떤 컨텍스트에서도 사용할 수 없습니다.
Parameters
refresh(): void;
Returns
refresh는 값을 반환하지 않습니다.
Examples
app/actions.ts
'use server'
import { refresh } from 'next/cache'
export async function createPost(formData: FormData) {
const title = formData.get('title')
const content = formData.get('content')
// 데이터베이스에 게시물 생성
const post = await db.post.create({
data: { title, content },
})
refresh()
}app/actions.js
'use server'
import { refresh } from 'next/cache'
export async function createPost(formData) {
const title = formData.get('title')
const content = formData.get('content')
// 데이터베이스에 게시물 생성
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() {
// 이 코드는 에러를 발생시킵니다
refresh()
}