Apollo/GraphQL - 突变后更新缓存不更新 ROOT_QUERY

时间:2021-02-21 03:26:13

标签: reactjs graphql apollo apollo-client

突变:

  const [createContact] = useMutation(CREATE_CONTACT, {
    update(cache, { data: { createContact } }) {
      const { getContacts } = 
        cache.readQuery({
          query: GET_CONTACTS,
          variables: { _id: user._id },
        }
      );
      cache.writeQuery({
        query: GET_CONTACTS,
        variables: { _id: user._id },
        data: [...getContacts, createContact],
      });
    },
  });

突变有效,但它不会更新在父组件中运行的 GET_CONTACTS 的原始查询,结果将传递给该组件。我在这里尝试了很多随机的东西,比如使用 client.writeQuery,在 readQuery 结果上使用 cloneDeep,以及创建新数据的各种方法。仍然无法弄清楚是什么问题。感谢您的帮助。

0 个答案:

没有答案