【发布时间】:2021-04-26 18:27:27
【问题描述】:
是否可以将 Apollo 客户端配置为从返回项目列表的查询中获取单个缓存项目,以便在查询单个项目时预取数据?
架构:
type Item {
id: ID!
name: String!
}
type Query {
items: [Item!]!
itemById(id: ID!): Item!
}
查询1:
query HomepageList {
items {
id
name
}
}
查询2:
query ItemDetail($id: ID!) {
itemById(id: $id) {
id
name
}
}
鉴于单个项目的数据已经在缓存中,应该可以使用已经缓存的数据,同时仍然执行获取,以防任何数据发生变化。
但是,查询不使用缓存数据(至少默认情况下),似乎我们需要以某种方式告诉 Apollo 我们知道该项目已经在缓存中。
非常感谢任何帮助。
【问题讨论】:
标签: javascript caching graphql apollo apollo-client