【发布时间】:2019-03-24 03:06:59
【问题描述】:
我有两个疑问:
const GET_FILTERS = gql`
query getFilters {
filters @client {
id
title
selected
}
}
`
和
const GET_POSTS = gql`
query getPosts {
posts {
id
author
status
}
}
`
第一个使用apollo-link-state 从本地状态获取数据,第二个是外部调用。
我有一个 HOC 用于获取这样的帖子设置:
const withPosts = (Component) => (props) => (
<Query
query={GET_POSTS}
>
{({loading, data, error})} => {
if(loading) return null
if(error) return null
return <Component {...data} {...props}/>
}}
</Query>
)
帖子的获取很好,但我想做的是在每次调用GET_POSTS 查询时添加从GET_FILTERS 查询返回的任何内容?
我可以做的一件事是将withPost 包装到另一个中,比如说withFilters HOC,并将结果作为变量传递给GET_POSTS 查询,但我一直想知道是否有任何其他访问方式通过某种上下文获取数据,例如 cache.readQuery 仅使用 withPost HOC。
【问题讨论】:
-
如果你用上一个的内容进行refetch查询怎么办?
标签: graphql react-apollo apollo-client apollo-link-state