首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >useQuery和useLazyQuery - React Apollo的合并结果

useQuery和useLazyQuery - React Apollo的合并结果
EN

Stack Overflow用户
提问于 2020-07-19 21:14:44
回答 1查看 540关注 0票数 1

在使用@apollo/client探索react时,我使用useQuery进行首次加载,使用useLazyQuery进行按需加载(在执行一些操作、刷新、创建等操作之后)。如下所示:

代码语言:javascript
复制
 const { data} = useQuery(GET_POSTS_QUERY);
 const [fetchPosts, { data: fetchedposts}] = useLazyQuery(GET_POSTS_QUERY);

我在我的JSX标记中呈现data,但是由于名称冲突,我需要获取按需获取的数据到其他名为fetchedposts的const。

在这种情况下,我将如何更新我的UI上的数据?我的UI使用的是data而不是fetchedposts

有没有什么方法可以合并这两个状态。或者我应该使用useState使用单独的状态,并使用这些更新相同的状态?

EN

回答 1

Stack Overflow用户

发布于 2020-07-19 21:30:19

经过进一步的研究,我知道我可以利用useQuery返回的refetch函数来执行这样的操作!

所以我在这里得到的是,在这种情况下,我可以完全避免使用useLazyQuery &只需使用refetch。

代码语言:javascript
复制
const { data, loading, error, refetch} = useQuery(GET_POSTS_QUERY);
.
.
.
<button className="btn btn-raised btn-primary" onClick={() => refetch()}>
  Fetch Posts on Demand
</button>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62980770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档