1

我正在尝试将 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 的组件之一也返回未定义的数据。我错过了什么?

4

0 回答 0