如何在突变前更新 apollo 缓存状态,以进行喜欢、投票等操作?

How to update apollo cache state BEFORE mutation, for actions like Like, Upvote etc.?

我正在为 GraphQL 查询使用 Apollo 客户端制作一个 React 应用程序,我想在其中更新投票状态,这样用户就不会花时间投票。如果我不这样做,我必须等待 return 数据的突变,这需要 1 秒。有什么办法可以解决这个问题吗?

我认为 optimisticResponse 是您的解决方案。 (正如@xadm 指出的那样)

https://www.apollographql.com/docs/react/performance/optimistic-ui/

如果你已经在你的 mutation 中实现了 update 函数(它通常用于更新你的查询,否则你应该),它会被调用两次,一次是用你的 optimisticResponse , 并再次使用 server response.