mobx,redux 这些划分store的问题

  1. 找了很多资料,对于store的划分好像都是推荐扁平化。最多两层如:
    {
       home:homeStore,
       about:aboutStore
    }
  1. 那么上面这种结构,对于复杂的页面怎么办呢?比如home。有头部,有创建,有table,很多块。都在一个store中的话。团队协作怎么办?每次获取代码都会有冲突。结构不清晰,而且每次要加个东西,找文件都要转到store中去很不方便。

目前我们是这样搞的:但是这样也会有问题就是 组件相互通信 不方便了。

    {
       homeStore:{
         headerStore,
         tableStore:{
             searchStore,
             listStore
         },
         createStore
       },
       about:aboutStore
    }

能否给些建议,到底哪种好?怎么解决各种痛点呢?

阅读 2.2k
2 个回答

公共的应该抽离, 例如 header footer tabBar 都属于 pageConig 不应该属于 单独一个页面

不知道你们项目具体的分工,但 store 中的 reducer 可以拆成多个,随后通过 combineReducers 来组合一下,每个人只用写对应的组件就好了,不会冲突。

可以参考一下,这个项目的文件结构划分。

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题