首页 > 解决方案 > 如何在 React Apollo 中重新运行本地解析器?

问题描述

在我的查询中,我混合使用了远程和本地属性,如下所示:

foo {
  bar
  baz
  qux @client
  quux @client {
    corge
    grault
  }
}

我为quxand准备了解析器quux,但我想每隔一段时间重新计算一次数据。cache.writeData我曾考虑使用and直接写入缓存setInterval,但这需要大量重写。

有没有办法再次运行解析器?

标签: graphqlapolloreact-apolloapollo-client

解决方案


如果您想在特定的时间间隔内再次运行解析器,您可以pollInterval作为选项传递给您的 graphql HOC 或作为道具传递给您的 Query 组件,具体取决于您的实现。或者,如果您想重新查询以响应例如用户事件,您可以调用该refetch函数,该函数应该可以通过 props 访问。有关其他信息,请参阅此处的文档。


推荐阅读