微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Apollo 客户端本地状态最佳实践/方法

如何解决Apollo 客户端本地状态最佳实践/方法

在这里有一些具体问题,但我真的只是想重新评估我对 Apollo Client 的使用情况,并找出真正的最佳实践,而不是仅仅使用过去对我来说乏味的方法

我想弄清楚的中心场景是我有一个 <input> 字段,它的值反映了一个 GraphQL 字段(比如 BlogPost: { title }),我想:

  • <input> 以来自 GraphQL API 的值开始(如果它 存在),
  • <input>显示文本立即响应用户 输入(在用户输入和它出现在 输入框),
  • 输入框中的文本将立即反映在其他地方 应用程序(例如标题的不可编辑的 <h1> 预览),以及
  • 对 GraphQL API 的去抖动请求。

我可以使用 React 的 useState 将其一起破解,但我觉得这应该没有必要,因为 Apollo Client 具有处理客户端状态所需的所有功能。但是,当我尝试使用乐观更新并请求去抖动时:

  • 我必须手动指定要重新获取查询(为什么?根据文档,我认为这应该是自动的),并且
  • 页面上使用这些手动重新获取查询的其他位置的更新不会实时更新,而是等待去抖动的请求返回(即使我定义了 optimisticResponse)。

在此先感谢您的帮助!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。