apollo-link-state cache.writedata导致缺少字段警告

时间:2017-12-28 10:26:01

标签: apollo react-apollo

当我在客户端上调用变异时,我收到以下警告:

  

writeToStore.js:111 {}

中缺少字段updateLocale

这是我的stateLink:

const stateLink = withClientState({
  cache,
  resolvers: {
    Mutation: {
      updateLocale: (root, { locale }, context) => {
        context.cache.writeData({
          data: {
            language: {
              __typename: 'Language',
              locale,
            },
          },
        });
      },
    },
  },
  defaults: {
    language: {
      __typename: 'Language',
      locale: 'nl',
    },
  },
});

这是我的组成部分:

export default graphql(gql`
  mutation updateLocale($locale: String) {
    updateLocale(locale: $locale) @client
  }
`, {
    props: ({ mutate }) => ({
      updateLocale: locale => mutate({
        variables: { locale },
      }),
    }),
  })(LanguagePicker);

我错过了什么?

2 个答案:

答案 0 :(得分:11)

我收到了同样的警告并通过从变异方法返回数据来解决它。

eval( f(z, model = "ar1") )$hyper

答案 1 :(得分:2)

目前,apollo-link-state要求您返回任何结果。它也可以是nullThis might be changed in the future