在了解GraphQL和Apollo的过程中,我经历了this tutorial series。
它显示了如何创建一个具有以下内容的应用程序:
/
)
/soccer
)
默认情况下,Apollo会缓存查询并出现问题:
/soccer
),第一次,缓存中不存在数据,执行查询并将结果存储在缓存中/baseball
)/soccer
/soccer
),由于商店中存在数据 - 陈旧的数据被加载,因为没有任何说明数据陈旧且应该被重新提取我似乎找不到合理的方法来解决它。不寻找代码,只是一些关于如何使用GraphQL处理它的好方法。
我尝试将fetchPolicy
更改为cache-and-network
,但它并不要求更多数据 - 同样适用,没有任何说数据是陈旧的。 network
可以工作,但这可以解决缓存问题 - 当它符合要求时,这是一个可行的解决方案,但我实际上不需要进行一些缓存。
我想到的可能选项:
fetchPolicy
设置为network
。可行选项,但发送已有的数据。fetchMore
。我知道这取决于项目,但有哪些其他选项,哪些是受欢迎的,为什么?