我是否正确说ApolloClient会缓存我的查询甚至跨组件进行缓存,所以useContext是不必要的吗?

问题描述

我有一个ApolloClient通过useQuery执行查询。

我希望整个应用程序都可以使用该对象,而不必从数据库中重新获取它。所以我正在实现useContext。

但是,我记得ApolloClient缓存了其结果。

因此,如果我有以下代码行:

const { loading,error,data } = useQuery(USER);

,我在多个组件中重复这一行代码,树后面的组件会访问 cached 版本吗?基本上是不需要useContext的?

谢谢。

这是我的客户端配置:

const client = new ApolloClient({
  link: new HttpLink({
    uri: graphql_url,fetch: async (uri: string,options: any) => {
      options.headers.Authorization = `Bearer ${realmUserToken}`;
      return fetch(uri,options);
    },}),cache: new InMemoryCache(),});

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...