我可以用 redux 提供者和 apollo 提供者包装我的应用程序吗?
Posted
技术标签:
【中文标题】我可以用 redux 提供者和 apollo 提供者包装我的应用程序吗?【英文标题】:Can I wrap my application with both a redux provider and an apollo provider? 【发布时间】:2019-03-07 06:23:30 【问题描述】:我可以用'react-redux'
和'react-apollo'
来包装我的应用程序,还是应该选择其中一个?
我读过的几个关于将 Apollo 用于乐观 UI 的示例将它与在 redux 中创建相同的结果以及这将是多少工作进行了对比。
我已经在应用程序中使用 redux 和 redux-saga,并且正在考虑是否应该将 Apollo 客户端用于更多的事情,而不仅仅是发出请求。
这是我正在做的代码示例:
return (
<ApolloProvider client=client>
<Provider store=store>
<ConnectedRouter history=history>
<ScrollToTop>
<App />
</ScrollToTop>
</ConnectedRouter>
</Provider>
</ApolloProvider>
);
【问题讨论】:
【参考方案1】:您也在包装路由器提供程序 - 主题、上下文...多个提供程序没有错;)
Local state 可以代替 redux 用于某些共享的应用程序状态/数据/逻辑(解析器),但在许多情况下 redux 仍然具有优势。
【讨论】:
Apollo 对地方州的处理方法需要一堆样板文件,但没有带来很多东西。不可否认,Redux 也是重量级的,但它更健壮,具有时间旅行和一套很棒的调试工具。以上是关于我可以用 redux 提供者和 apollo 提供者包装我的应用程序吗?的主要内容,如果未能解决你的问题,请参考以下文章