【发布时间】:2019-02-18 17:20:53
【问题描述】:
我使用默认值创建状态链接,如下所示:
const stateLink = withClientState({
cache,
resolvers,
defaults: {
quote: {
__typename: 'Quote',
name: '',
phoneNumber: '',
email: '',
items: []
}
}
})
所以我的缓存不应该是空的。现在我的resolvers 地图如下所示:
resolvers = {
Mutation: { ... },
Query: {
quote: (parent, args, { cache }) => {
const query = gql`query getQuote {
quote @client {
name phoneNumber email items
}
}`
const { quote } = cache.readQuery({ query, variables: {} })
return ({ ...quote })
}
}
}
我的resolvers 的datasource 是缓存对吗?所以我必须以某种方式查询缓存。但这不起作用,我想这是因为我正在尝试回复 quote 查询,为此我正在制作另一个 quote 查询。
我想我应该在不查询 quote 的情况下获取 quote 数据,但是如何?
我收到此错误:
Can't find field **quote** on object (ROOT_QUERY) undefined
请帮忙
【问题讨论】:
标签: javascript graphql react-apollo apollo-client