revalidatePath
revalidatePath
允許您針對特定路徑按需清除 快取資料。
須知事項:
revalidatePath
可在 Node.js 和 Edge 運行環境 中使用。revalidatePath
僅在下次造訪包含的路徑時才會使快取失效。這意味著使用動態路由區段呼叫revalidatePath
不會立即觸發大量重新驗證,只有當下次造訪該路徑時才會失效。- 目前
revalidatePath
會使 客戶端路由快取 中的所有路由失效。此行為是暫時的,未來將更新為僅影響特定路徑。- 使用
revalidatePath
僅會使 伺服器端路由快取 中的 特定路徑 失效。
參數
path
: 可以是字串形式,表示您想重新驗證的資料關聯的檔案系統路徑 (例如/product/[slug]/page
),或是字面路由區段 (例如/product/123
)。長度必須少於 1024 字元,且區分大小寫。type
: (選填)'page'
或'layout'
字串,用於變更要重新驗證的路徑類型。若path
包含動態區段 (例如/product/[slug]/page
),則此參數為必填。
回傳值
revalidatePath
不會回傳任何值。
範例
重新驗證特定 URL
這將在下次造訪頁面時重新驗證特定 URL。
重新驗證頁面路徑
這將在下次造訪頁面時重新驗證符合提供的 page
檔案的所有 URL。此操作 不會 使特定頁面下的其他頁面失效。例如 /blog/[slug]
不會使 /blog/[slug]/[author]
失效。
重新驗證佈局路徑
這將在下次造訪頁面時重新驗證符合提供的 layout
檔案的所有 URL。這會導致使用相同佈局的子頁面在下次造訪時也被重新驗證。例如在上述案例中,/blog/[slug]/[another]
也會在下次造訪時重新驗證。
重新驗證所有資料
這將清除客戶端路由快取,並在下次造訪頁面時重新驗證資料快取。