主分支
分支
主分支 (2.15.2)dev
版本
2.15.21.19.3v0.21.0
React Router v7 已发布。 查看文档
clientAction
本页内容

clientAction

除了 (或代替) 你的 action,你还可以定义一个 clientAction 函数,该函数将在客户端执行。

每个路由都可以定义一个 clientAction 函数来处理 mutation。

export const clientAction = async ({
  request,
  params,
  serverAction,
}: ClientActionFunctionArgs) => {
  invalidateClientSideCache();
  const data = await serverAction();
  return data;
};

此函数仅在客户端运行,并且可以通过几种方式使用

  • 对于全客户端路由,可以使用它代替服务器 action
  • clientLoader 缓存一起使用,通过在 mutation 时使缓存失效
  • 为了方便从 React Router 迁移

参数

params

此函数接收与 action 相同的 params 参数。

request

此函数接收与 action 相同的 request 参数。

serverAction

serverAction 是一个异步函数,它对该路由的服务器 action 进行 fetch 调用。

另请参阅

文档和示例在以下许可下发布 MIT