在同一级别上组成嵌套的减速器

时间:2018-12-31 16:57:51

标签: reactjs redux

我希望通过Person减速器和Address减速器来管理以下还原状态:

{
  person: {
    name: 'John Doe',
    address: {
      street: '123 Main Street',
      ...
    }
}

我尝试使用combineReducerreduceReducer,但无法获得理想的结果。

理想情况下,人归化器直接管理其下的属性,而地址也是如此。

我想念什么?

1 个答案:

答案 0 :(得分:0)

听起来像您在寻找2个异径管之间的关系。您可以考虑使用normalizing the state shape

归一化的Person减速器看起来像:

{
  persons: {
    byId: {
      person1: {
        id: 'person1',
        name: 'John Doe',
        address: 'address1'
      }
    }
  }
}

Address变为:

{
  addresses: {
    byId: {
      address1: {
        id: 'address1',
        street: '123 Main Street',
        // ....
      }
    }
  }
}