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]
也将在下次访问时重新验证。
重新验证所有数据
这将清除客户端路由缓存,并在下次页面访问时重新验证数据缓存。