在 ApolloClient 中,如何在突变完成后但在重新获取查询之前执行函数?

时间:2021-06-26 10:02:17

标签: apollo apollo-client

我正在尝试实施身份验证系统。

当用户提交他们的电子邮件和密码时,我会运行一个改变来返回身份验证令牌,并将其保存到 cookie 中。之后,我想运行一个 ME 查询,它使用该令牌来获取用户对象(以及他们的用户名和其他信息),一旦获取,我就会更新 UI(在标题中显示他们的用户名,例如)。

问题是我无法立即重新获取 ME 查询,如下所示:

useMutation(LOGIN, {
  refetchQueries: [{ query: ME }]
})

因为在 LOGIN 突变之后,令牌还没有保存到 cookie 中。

我需要:

  1. 运行 LOGIN 更改。
  2. 将令牌保存到 cookie 中。
  3. 然后才重新获取 ME 查询。

这样做的正确方法是什么?

0 个答案:

没有答案