觉得redux的store应该是很薄的一层,里面不应该放太多状态,只应该放一下需要跨页面共享的状态就行了,例如user等公共信息。各个模块的状态,最好不要放在Store中,就是不使用它的modules这个功能。模块各自的状态就直接用api拉取来更新自己的state就行了,感觉这样维护起来更方便一些。一是减少书写代码量,二是状态比较集中,看起来也方便,三是用webpack进行code split也方便,不会造成Store.js很大的问题。本人一直觉得redux被滥用了,其实没有那么多场景要用它,不是吗?
即便状态只在一个模块使用,但放在全局 store 还是有一些好处的。例如:一个页面,数据在页面的话,每次进入页面都要向后台取数据,有一个加载时间。如果放在全局的话,就可以在加载时先显示之前的数据,用户体验会好一些。另外,如果需求变化频繁,指不定哪天就要在其它地方用到这些数据,放在全局拓展性会更好。不过,具体放哪还是看需求吧。