【发布时间】:2019-02-08 03:48:42
【问题描述】:
我正在使用带有突变的 graphql HOC 输入类型为 checkbox。我还为它添加了乐观的 UI 更新选项。选中该框将触发带有value=true 的突变,取消选中该框将触发带有value=false 的突变。
但问题是快速点击会导致对服务器的多次变异调用,并且响应存在延迟。与此同时,optimisticResponse update 完成了它的工作并切换了复选框。当服务器响应到达时,再次调用更新函数并切换复选框,导致 UI 出现故障。
让我总结一下我可以预期的流程
点击顺序:
Check => Uncheck => Check
UI 更新顺序:
Check(optimistic response) => Uncheck(optimistic response) => Check(server response) => Check(Optimistic response) => Uncheck(server response) => Check(server response)
有没有办法消除这些故障?
【问题讨论】:
标签: react-apollo optimistic-ui graphql-mutation