【问题标题】:Redux - keeping related reducers in syncRedux - 保持相关减速器同步
【发布时间】:2017-07-14 18:04:14
【问题描述】:

我现在正在构建一个 Angular 1.5 应用程序,我正在逐步添加 Redux。我遇到了一个问题,我很难找到一个好的解决方案。我的应用程序主要处理显示数据的小部件并管理定义在这些小部件中显示哪些数据的配置。随着我向 Redux 添加更多状态,小部件减速器变得越来越大。我已将其分解为几个较小的减速器,但现在我想知道这样的设置的可维护性。

基本上我担心在未来修改一个 reducer 或添加一个对小部件数据进行操作的新操作会太容易,然后忘记调整所有其他 reducer 以考虑系统的这一新方面。或者通过 reducer 改变小部件状态的各种方式会变得非常复杂,以至于很难确保我已经正确调整了所有必要的 reducer。

这些 reducer 中的许多本质上只需要在小部件被移除/移动/修改/任何情况下做出反应。我希望在 Redux 中有一个简单的包罗万象的方法来做到这一点,就像香草 Angular 中的深度观察(我知道一般应该避免深度观察,但仅作为示例)。随着我将更多的应用程序转换为使用 Redux,这些 reducer 将变得越来越复杂。这似乎是一场失败的比赛。是否有一些不同的方法来解决这个问题,更适合这个问题空间?还是我应该接受一些减速器将是巨大的,这就是它必须的样子?感谢您的任何意见!

【问题讨论】:

    标签: redux


    【解决方案1】:

    我的具体问题的解决方案主要是将与给定小部件相关的所有状态保留在一个对象中,这样我就不会遇到多余的数据管理要求。我将 state 和 reducer 都分开了,这导致管理数据清理和维护的相同逻辑分布在不同的 reducer 上。如果我只是通过实现更高阶的 reducer 来拆分 reducer,并为一个概念将状态保存在一个地方,那么这个问题就会消失。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多