在https://facebook.github.io/relay/docs/thinking-in-graphql.html文章中有详细的解释Relays 缓存是如何工作的。
但是它没有描述如果我想用相同的查询从服务器数据刷新我的本地存储该怎么做。根据中继逻辑,它将查看查询,在本地找到它并从本地存储返回数据。
但是如何避免缓存并强制 Relay 向服务器发送新请求呢?
在https://facebook.github.io/relay/docs/thinking-in-graphql.html文章中有详细的解释Relays 缓存是如何工作的。
但是它没有描述如果我想用相同的查询从服务器数据刷新我的本地存储该怎么做。根据中继逻辑,它将查看查询,在本地找到它并从本地存储返回数据。
但是如何避免缓存并强制 Relay 向服务器发送新请求呢?
您可以让 Relay 使用forceFetch
API发送重新获取所有数据的请求。
例如,如果您的 React 组件中有一个按钮来刷新数据,并且如果处理函数是refreshData
,则调用forceFetch
该函数:
refreshData() {
this.props.relay.forceFetch();
}