更换 redux 工具包商店或其他方式拥有两个商店
Posted
技术标签:
【中文标题】更换 redux 工具包商店或其他方式拥有两个商店【英文标题】:Replacing redux toolkit store or other way to have two stores 【发布时间】:2021-12-09 22:47:54 【问题描述】:我有以下问题。 我被要求制作一个示例项目,将 Redux Toolkit Query 和 Redux Toolkit 与 Fetch API(或 Axios)的使用进行比较。
我有 Redux Toolkit Query 部分。 如何添加其他商店? 我应该这样做:
<ChosenStoreContext>
<Provider store=store>
<ApiProvider api=api>
...Rest of the app
</ApiProvider>
</Provider>
</ChosenStoreContext>
添加 ChosenStoreContext(useContext 布尔值)只是为了告诉组件它们应该调度查询操作还是存储操作
或者我应该完全走其他路线吗? ApiProvider documentation 表示它可能会导致冲突。 任何提示都会有所帮助!
【问题讨论】:
【参考方案1】:ApiProvider
也将创建一个商店并使用 Provider
将其传递下来 - 覆盖原来的 Provider
。
通常,您的应用程序中应该只有一个商店 - 您可以将这两个示例放在一个商店的不同切片上,而不会相互影响。
可以选择使用multiple contexts 拥有多个不同的提供程序和挂钩集,但这是额外的工作,不会为您带来任何好处。
把所有东西放在同一个商店里。
【讨论】:
以上是关于更换 redux 工具包商店或其他方式拥有两个商店的主要内容,如果未能解决你的问题,请参考以下文章
在 React-native 中使用 Redux Toolkit 持久化存储