如何使组件独立于状态结构与减速器相同

时间:2016-02-04 13:24:41

标签: reactjs flux redux

Redux是关于减速剂成分的。您可以嵌套它们然后随意组合。重要的是每个减速器完全没有意识到国家的外部结构。它只处理自己的作品。

不幸的是,这并不适用于组件。

当你connect组件为redux时,通常会定义一个将状态映射到组件的道具的函数。我没有找到最佳的是这个函数总是把整个app状态作为一个参数。

在一个理想的情况下,如果一个组件依赖于由单个reducer管理的数据,我更喜欢组件(或connect函数)...

  1. 只能访问该数据。
  2. 没有必要担心数据在州的层次结构中的位置。
  3. 整个组件(或者应用程序模块 / 部分)将与应用程序的其余部分很好地分离(我认为这是React的理想选择)从一开始就努力。)

    如果不出意外,它会使状态结构的重构变得更简单(现在它很容易在嵌套的Reducer中移动,但是你必须手动更新所有那些所谓的{ {1}}以匹配新的州结构。)

    是否有推荐的方法或模式如何在组件级别实现这种解耦?

1 个答案:

答案 0 :(得分:1)

显然,答案是reselect。选择器的结构和嵌套方式与reducer相同。