react-boilerplate嵌套Redux状态

时间:2018-09-08 20:35:32

标签: javascript reactjs redux react-redux react-boilerplate

我在React Boilerplate中有一个关于嵌套Redux状态的查询,如果有人可以帮助我解决这个问题,我将不胜感激。

希望这应该很容易回答,因为这是一个基本问题。

  

根据redux文档,最可取的是将redux状态作为域分开。

{
    simpleDomainData1: {....},
    simpleDomainData2: {....},
    entities : {
        entityType1 : {....},
        entityType2 : {....}
    },
    ui : {
        uiSection1 : {....},
        uiSection2 : {....}
    } 
}

如何在react-boilerplate中实现这种状态结构?我一直在使用内置生成器创建我的容器,并将它们保持在同一级别,如:

App
|__ Components
|__ Containers
      |__ Container1
      |__ Container2
      |__ Container3
      |__ Container4
      :
      :

我的redux状态是超级规范的,就像这样:

{
  route: {
    location: {
      ....
    }
  },
  container1: {
    data: {}
  },
  container2: {
    data: {}
  },
  container3: {
    data: {}
  },
  container4: {
    data: {}
  }
}

但是我现在在一个需要将容器2和3嵌套在容器1中的位置(根据业务逻辑)。如何在我的redux商店中镜像此结构?

{
  route: {
    location: {
      ....
    }
  },
  container1: {
    data: {
          container2: {
                 data: {...}
           },
           container3: {
                data: {...}
           },
       }
  },
  container4: {
    data: {}
  }
}

我们如何使用injectReducer来实现嵌套状态?还是大家都使用另一种方法? TIA!

  • 我尝试在Container1下定义/Container1的所有化简器,从而使我可以控制整个状态,但这似乎是一种反模式

    < / li>
  • 我还没有尝试将Containers 2和3嵌套在Container1中,因为我不知道injectReducer实用程序在这种情况下如何工作。 p>

(我也在Gitter上发布了此信息)

0 个答案:

没有答案