首页  >  问答  >  正文

html5 - redux单页面应用中 是一个store?

单页面应用中,我能否按照不同的路由加载不同的store?
因为系统复杂(比如三十个页面),应该不可能把所有的状态都何在一个store吧?
希望懂得朋友给点建议,谢谢!

伊谢尔伦伊谢尔伦2742 天前1163

全部回复(4)我来回复

  • 怪我咯

    怪我咯2017-04-17 13:59:45

    可以在每个路由页面用connect获取所需的store

    回复
    0
  • PHPz

    PHPz2017-04-17 13:59:45

    因为系统复杂(比如三十个页面),应该不可能把所有的状态都何在一个store吧?

    我觉得,在 redux 的思想中,是建议一个 app 用一个 store 的。除非某些 state 完全独立,不会有任何联系,当然可以使用多个 provider,不过这样也可以看做是多个 app 了吧。redux 用 reducer tree 来做结构的划分,在每个 container 里用 selector 选择需要的 store 即可。性能问题也不要太担心,react-redux 的 connect 也会帮你优化掉大部分不必要的渲染,一般来说可以了。

    回复
    0
  • ringa_lee

    ringa_lee2017-04-17 13:59:45

    感觉不是想不想吧,redux限制了一个并且只能有一个store.

    整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一一个 store 中。

    回复
    0
  • 阿神

    阿神2017-04-17 13:59:45

    创建store

    回复
    0
  • 取消回复