【发布时间】:2020-12-10 20:46:42
【问题描述】:
我正在学习 apollo 和 graphQL,并且有一个显示数据列表的简单应用程序,其中包含添加到数组的 fetchMore 函数。
我想删除已弃用的 updateQuery 并使用新的字段策略合并功能。当前的缓存设置和 updateQuery 如下所示:
const cache = new InMemoryCache({
typePolicies: {
client_client: {
fields: {
// add local only value to clients
isEdited: {
read(value = false) {
// when writing the new value return new value or false as default
return value;
},
}
}
}
}
});
const onFetchMore = () => {
fetchMore({
variables: {
offset: page
},
updateQuery: (previousResult, { fetchMoreResult, queryVariables }) => {
return {
...previousResult,
client_client: [
...previousResult.client_client,
...fetchMoreResult.client_client,
],
};
},
});
}
但是,我似乎无法让它在 apollo 客户端 v3 的缓存中用作合并功能。我尝试在许多不同的地方添加合并,但它似乎总是破坏应用程序。
如能提供任何帮助,我们将不胜感激。
【问题讨论】:
标签: graphql apollo react-apollo apollo-client