我正在尝试将 Apollo Cache 专门用于本地状态管理。我正在使用 Apollo Client 3。我正在尝试使用缓存中的 writeQuery 写入默认状态(一个简单对象),但它没有写入缓存中。我在这里找不到我缺少的东西。
const DEFAULT_STATE_QUERY = gql`
query defaultState{
id
name
age
}
`;
和
client.writeQuery({
query: DEFAULT_STATE_QUERY,
data: {
defaultState: {
__typename: "DefaultState",
id: 1,
name: "Biryani",
age: 45
},
},
});
我检查了我们不需要 typeDefs 来读取和写入缓存,只要我们不想在 apollo 开发工具中进行自省。因此我初始化了一个简单的客户端
const client = new ApolloClient({
cache: new InMemoryCache()
});
并使用它提供给我的组件ApolloProvider
尽管运行了执行 client.writeQuery 的代码,但我在 Apollo 缓存中看不到任何内容,并且预期,运行 useQuery 的组件之一也返回未定义的数据。我错过了什么?