问题描述
我在 React Native 应用程序中使用 Apollo 客户端访问我的 GraphQL 端点。
const client = new ApolloClient({
cache: new InMemoryCache(),link: new WebSocketLink({
uri: graphqlEndpoint,options: {
lazy: true,reconnect: true,timeout: 30000,connectionParams: {
headers
}
}
}),defaultOptions: {
watchQuery: {
fetchPolicy: 'cache-first'
},query: {
fetchPolicy: 'cache-first'
},}
});
在各种屏幕中,我使用 useQuery 钩子查询数据。这是我的一个屏幕中的示例:
const { loading,error,data } = useQuery(GET_RESTAURANT,{
variables: { restaurantId,userId }
});
我面临的问题是,每次我离开应用程序(从而将应用程序置于后台)时,查询都会重置。当我返回应用程序(因此将应用程序置于前台)时,loading 设置为 true,data 设置为 undefined。
这会创建一种行为,每次用户离开应用程序并返回时,屏幕似乎都会重新加载。理想情况下,屏幕不会重新加载,用户只需从上次中断的地方继续。
如何防止每次应用状态更改时重新加载查询?非常感谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)