【发布时间】:2020-11-16 09:35:08
【问题描述】:
我最近正在从 2.0 迁移到 apollo 客户端 3.0。
我有一个查询需要获取更多和分页。
通过做,
const cache = new InMemoryCache({
typePolicies: {
Query: {
fields: {
getData: {
// Handles incoming data
keyArgs: [],
merge(existing ={/*some default object fields*/}, incoming) {
return {
...existing,
pageInfo: incoming.pageInfo,
edges: [...existing.edges, ...incoming.edges],
};
},
},
},
},
},
});
我能够处理初始查询/获取和分页。 但是,我在如何处理重新获取方面遇到了麻烦。 使用此合并功能,重新获取的数据只需与现有缓存数据连接。 我无法找到如何在合并功能中正确处理此问题。
如果有人知道如何处理,请告诉我。
【问题讨论】:
-
我也有同样的问题。对我来说似乎是一个错误。为什么我必须担心在这种情况下合并? refetchQueries() 不应该删除旧的缓存值吗?
-
是的,我认为这是这种新结构的错误或缺点。但是 3.0 是上个月发布的,所以我相信会有更多的事情发生。据我所知,Apollo 非常擅长管理文档、博客(apollo blogs)和特性。
标签: react-apollo apollo-client