ApollouseQueryhook返回的数据与其缓存的读取策略不一致。
创始人
2024-09-09 13:30:26
0

需要在 Query 组件中进行处理,通过设置 fetchPolicy 和 returnPartialData 参数,来获取缓存中的数据,同时使得不会在缓存中找到数据时返回错误。代码示例如下:

import { useQuery } from '@apollo/react-hooks';
import { gql } from 'apollo-boost';

const GET_POSTS = gql`
  query GetPosts {
    posts {
      id
      title
    }
  }
`;

function PostList() {
  const { loading, data } = useQuery(GET_POSTS, {
    fetchPolicy: 'cache-and-network',
    returnPartialData: true,
  });

  if (loading && !data) {
    return 
Loading...
; } const posts = data.posts || []; return (
    {posts.map(post => (
  • {post.title}
  • ))}
); }

在上面的例子中,我们设置了 fetchPolicy 参数为 'cache-and-network',这意味着 useQuery 钩子将首先尝试从缓存中获取数据,如果找到了,则返回缓存中的数据,并尝试发起网络请求来获取最新的数据。如果网络请求成功,则返回最新的数据并将其存储在缓存中。如果在缓存中找不到数据,则返回返回PartialData 参数中定义的数据(在本例中为 posts)。最后,我们将返回的数据存储在变量中,并在组件中使用它来渲染一个帖子列表。

相关内容

热门资讯

总算了解"aapok... 总算了解"aapoker透视脚本"开挂(插件)辅助插件有挂详细-揭秘教程【无需打开直接搜索加薇136...
查到实测辅助"wej... >>您好:wejoker黑侠辅助器确实是有挂的,很多玩家在这款wejoker黑侠辅助器游戏中打牌都会...
一分钟秒懂"白金岛手... 一分钟秒懂"白金岛手游辅助本平台"开挂(透视)辅助透视有挂技术-第三方教程;打开点击测试直接进入微信...
透视中牌率"雀友会广... 透视中牌率"雀友会广东潮汕麻雀开挂"开挂(插件)辅助插件有挂攻略-解密教程;无需打开直接搜索加(薇:...
透视实锤"新荣耀房卡... 您好:新荣耀房卡辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...
发现一款"pokem... 发现一款"pokemmo手机辅助软件"开挂(软件)辅助软件有挂神器-力荐教程您好:pokemmo手机...
实测揭晓"樱花之盛辅... 实测揭晓"樱花之盛辅助器下载"开挂(下载)辅助下载的确有挂-必赢方法;亲,樱花之盛辅助器下载这款游戏...
七分钟辅助“兴动互娱软件辅助下... 七分钟辅助“兴动互娱软件辅助下载”开挂(脚本)辅助脚本2026教程-证实有挂兴动互娱软件辅助下载ai...
透视肯定"邳州友友辅... 大家好,今天小编来为大家解答邳州友友辅助软件这个问题咨询软件客服可以免费测试直接加微信(136704...
一分钟辅助“悟空大厅免费辅助器... 您好:这款悟空大厅免费辅助器游戏是可以开挂的,确实是有挂的,很多玩家在这款悟空大厅免费辅助器游戏中打...