【发布时间】:2020-05-02 01:22:49
【问题描述】:
我已经看过了:Writing nested object to Apollo client cache
我猜互联网上的其他地方。
所以我要做的就是将一个对象写入 Apollo 缓存中,并将其存储在本地。这是我的设置:
const cache = new InMemoryCache()
const client = new ApolloClient({
uri: '/hasura/v1/graphql',
cache,
credentials: 'include',
})
然后我写这个来初始化缓存,取自:https://www.apollographql.com/docs/react/data/local-state/#querying-local-state
cache.writeData({
data: {
todos: [],
visibilityFilter: 'SHOW_ALL',
networkStatus: {
__typename: 'NetworkStatus',
id: 1,
isConnected: false,
},
},
})
现在,当我想使用这个查询来查询缓存时:
const lolquery = gql`{
visibilityFilter @client
}`
const result = cache.readQuery({ query: lolquery })
console.log(result)
我可以获得 visibilityFilter 和 todos,但是当我尝试查询 networkStatus 时,即
const lolquery = gql`{
networkStatus @client
}`
我收到以下错误:
未捕获的不变违规:不变违规:10
谷歌搜索这个错误并没有给我太多答案。
只有我一个人遇到这种情况吗?我是否遗漏了一些非常明显的东西?
【问题讨论】:
标签: apollo react-apollo apollo-client