2

假设我有这样的模式(伪代码)

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单个评论查询获取具有相应 id 的缓存对象查询comments,如果可用?也就是说,comments查询应该text已经有一个评论的字段,该评论的 id 已经加载。只需要额外的网络请求来获取author字段。如果 Apollo 足够聪明,可以立即返回这个部分结果,然后author在我的示例中,当数据可用时返回其余字段,那就太好了。

使用 apollo 包/缓存可以做到这一点,还是我需要编写自己的useQuery包装器来直接读取缓存?

4

0 回答 0