[英]Is this a good design for using React context API
我正在开发一个 React 项目,该项目分为几个模块,每个模块包含几个组件。 还有一个commons
模块,其中包含两个或多个单独模块共有的组件。 我正在使用上下文 API 来管理所有 state。 下面是父组件(App.js)的结构。 Module1Container
, Module2Container
... 包含各个模块的组件。
return(
<CommonsContextProvider>
<Module1ContextProvider>
<Module1Container />
</Module1ContextProvider>
<Module2ContextProvider>
<Module2Container />
</Module2ContextProvider>
<Module3ContextProvider>
<Module3Container />
</Module3ContextProvider>
</CommonsContextProvider>
)
我主要希望将状态分开,因为每个模块的单个上下文会使其过于混乱。 为每个模块设置一个单独的上下文并为跨模块的常用 state 设置一个通用上下文是个好主意吗? 这种结构不是使单一事实来源规则无效吗? 更好的建议是最受欢迎的。
这种方法目前没有问题,但是从长远来看,如果需要维护项目单源还是比较好的,
对于单一事实来源,请使用 redux(redux-hooks),以防您需要模块化的状态视图,对不同的组件使用不同的减速器,为全局 state 使用通用减速器,然后使用 Z7490FE17CAEC3723E8 的 combineReducer 组合它们
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.