ApolloClient reducer 不是函数
Posted
技术标签:
【中文标题】ApolloClient reducer 不是函数【英文标题】:ApolloClient reducer is not a function 【发布时间】:2018-09-14 19:29:03 【问题描述】:我正在使用 apolloClient 向 graphql 服务器发送请求。
然而,由于我的应用程序使用 Redux,我遵循此文档 apollo-redux 能够使用 Redux 实现 apollo 客户端。
这是我客户的代码:
const client = new ApolloClient();
const store = createStore(
combineReducers(
apollo: client.reducer(),
// others
)
然而,client.reducer() 行会引发错误
client.reducer 不是函数
我该如何纠正这个错误
【问题讨论】:
你用的是什么版本的阿波罗? 它是 2.1.1 - 最后一个 【参考方案1】:由于从 2.0 开始,redux
没有被用作 Apollo 的缓存,您现在应该使用提供的 Apollo 存储:
import ApolloProvider from "react-apollo";
const App = () => (
<ApolloProvider client=client>
<div>
<h2>My first Apollo app ?</h2>
</div>
</ApolloProvider>
);
见https://www.apollographql.com/docs/react/recipes/2.0-migration.html#redux
【讨论】:
但是 redux 商店呢?我应该修改我的所有应用程序以使用 apollo 商店而不是 redux 吗?以上是关于ApolloClient reducer 不是函数的主要内容,如果未能解决你的问题,请参考以下文章
ApolloClient 不是构造函数(apollo-client with nodejs)