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

apollo useQuery 何时进行查询?

如何解决apollo useQuery 何时进行查询?

我们可以在 Apollo 文档中阅读以下内容..

认情况下,useQuery 钩子检查 Apollo 客户端缓存以查看是否 您请求的所有数据都已在本地可用。如果所有数据 在本地可用,useQuery 返回该数据并且不查询 你的 GraphQL 服务器。这个缓存优先策略是 Apollo Client 的 获取策略。

假设我有一个页面,可以在其中加载人们添加的所有书籍。假设用户 A 正在查看此屏幕。 userB 现在添加一个新的。

问题:

  • 如果 userA 刷新页面,他/她会看到添加的新书吗?会进行查询吗?
  • 我真的不明白阿波罗是什么意思if all data is available locally。 Apollo 如何知道所有数据是否已经可用?有人可以同时添加它。

解决方法

如果您将其设置为使用 Apollo 缓存,则默认情况下用户 A 将不会听到用户 B 的新书。有几种方法可以解决这个问题:

  1. 每 x 分钟轮询一次服务器
  2. 设置对服务器的订阅
  3. 通知前端可通过单独订阅获得更新

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