我正在为Chrome使用阿波罗开发工具,我似乎无法理解如何更新缓存。
mutation 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();}} /> )} }更新后,缓存将不更新。
编辑:更改
cache.writeQuery({query: getAllElements, data: result});
// to
cache.writeQuery({query: queryAllElements, data: result});发布于 2018-10-31 15:29:41
我解决了问题。结果发现我更新了缓存中的错误密钥。
https://stackoverflow.com/questions/53045653
复制相似问题