Apollo客户端缓存 - 网络错误:无法在解析器中读取未定义的属性“appStateOfUI”

时间:2018-02-02 06:52:53

标签: graphql-js react-apollo apollo-client

代码是这样的。我正在关注apollo-link-state示例。

const defaultState = {
    "appStateOfUI": {
        __typename: "appStateOfUI",
        first: "John",
        last: "Doe"
    }
};

我们使用以下默认设置为客户端预热:

const stateLink = withClientState({
    cache,
    defaults: defaultState,
    resolvers: {
        Mutation: {
            updateAppState: ...
        }
    }
});

并像这样初步化我的客户。

const client = new ApolloClient({
    link: ApolloLink.from([
        stateLink,
        new HttpLink({...})
    ]),
    cache
});

一切都很正常。但我不明白为什么我的工作不起作用。

花了相当长的一段时间后,我发现一些实用程序从库端打破,人们建议回滚。在其他thread黑客/修复。只是想在这里分享,以便其他人可以受益。

1 个答案:

答案 0 :(得分:0)

FIX:修改您的默认设置,例如此appStateOfUI @client - 将客户端包含在属性中。它应该是这样的:

const defaultState = {
    "appStateOfUI@client": {
        __typename: "appStateOfUI",
        first: "John",
        last: "Doe"
    }
};

其余的相同......