我有一个名为deleteSong
的突变。我想知道突变已经过去了如何将多个查询传递到refetchQueries
?
this.props
.deleteSong({
variables: { id },
refetchQueries: [{ query: fetchSongs }] //<-- I only know how to pass 1 query
})
.then(() => {})
.catch(err => {
this.setState({ err });
});
答案 0 :(得分:3)
Apollo客户端文档说明了以下关于refetchQueries的内容:一个允许您指定在发生突变后要重新获取哪些查询的函数。因此,您应该可以将单个或多个查询传递给refetchQueries()
。
基本上它应该是:
this.props
.deleteSong({
variables: { id },
refetchQueries: [{ query: FETCH_SONGS }, { query: FETCH_FOLLOWERS }]
})
.then(() => {})
.catch(err => {
this.setState({ err });
});
FETCH_SONG
和FETCH_FOLLOWERS
应由graphql-tag定义。也许让别人知道这个解决方案是否适合你。