首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新阿波罗客户端上的缓存

问更新阿波罗客户端上的缓存
EN

Stack Overflow用户
提问于 2018-10-29 12:36:22
回答 1查看 2.5K关注 0票数 0

我正在为Chrome使用阿波罗开发工具,我似乎无法理解如何更新缓存。

  1. 每次查询后缓存都是相同的,即使它呈现的是正确的数据。
  2. 我正在开发一个CRUD应用程序,并在删除页面上显示在服务器上所做的更改。在执行删除DB中的项的突变之后,我还想从缓存中删除该项。 //诱变const DELETE_ELEMENT_MUTATION = gqlmutation DELETE\_ELEMENT\_MUTATION($id: String!) { deleteElement(id: $id) };//更新缓存更新=(缓存,有效负载) => { const data = cache.readQuery({query: queryAllElements});const结果=data.allElements.filter(元素=> { const elementId = script._id;const compareId = JSON.parse(payload.data.deleteElement).id;返回elementId !== compareId;};)< mutation={DELETE_ELEMENT_MUTATION} variables={id:id} update={this.update} > {(deleteElement) => (<图标onClick={() => { deleteElement();}} /> )} }

更新后,缓存将不更新。

编辑:更改

代码语言:javascript
复制
cache.writeQuery({query: getAllElements, data: result}); 
// to 
cache.writeQuery({query: queryAllElements, data: result});
EN

回答 1

Stack Overflow用户

发布于 2018-10-31 15:29:41

我解决了问题。结果发现我更新了缓存中的错误密钥。

解决方案

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53045653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档