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