阿波罗/ graphql中的部分缓存的值

时间:2020-08-09 08:28:29

标签: graphql apollo react-apollo react-apollo-hooks

假设我有一个这样的架构(伪代码)

query comments: [Comment]
query comment(id: Int!): Comment

我正在获取这样的注释(伪代码)

comments {
 id
 text
}

comment {
 id
 text
 author {
  id
  name
 }
}

在我的组件中(伪):

const comment = useQuery(COMMENT_QUERY, {variables: {id: 1}})

我的问题是这个。如果我已经使用commentsid字段加载了text的提要,然后随后又使用添加的author字段加载了单个注释,如何获取单个评论查询的useQuery,以从comments查询中获取具有相应ID的缓存对象(如果有)?也就是说,comments查询应该已经有text字段,用于具有已加载ID的注释。仅需要接起author字段才需要其他网络请求。如果阿波罗(Apollo)足够聪明,可以立即将部分结果返回给我,然后在数据可用时再返回其余字段(在我的示例中为author),就很好了。

apollo包/缓存是否可行,还是我需要编写自己的useQuery包装程序才能直接读取缓存?

0 个答案:

没有答案