javascript - 从不同的 reducer 访问 reducer ?

标签 javascript reactjs redux react-redux flux

我有一份学生列表,我的应用程序始终显示当时的一个学生,即 activePupil。到目前为止我有两个 reducer 。其中一个包含并默认返回所有子项的列表(以数组的形式):

[ 
 {
    id: 1
    name: Barack
 },
 {
    id: 2
    name: Donald
 }
]

...然后我有一个 activePupilReducer,其中包含当前正在查看的瞳孔。所以例如

 {
    id: 2
    name: Donald
 }

现在我不知道如何迭代到下一个学生。当调度“UPDATE_ACTIVE”操作时,我希望我的 activePupilReducer 将事件学生更新为下一个学生。因此,我需要获取学生当前的 id,迭代它,然后从另一个 reducer 中获取具有正确 id 的学生(或者这就是我认为我必须做的事情)。现在我的 activePupilReducer 看起来像这样:

export default function (state={id: -1, name:"John"}, action) {
  switch (action.type) {
      case "UPDATE_ACTIVE":
        // ??
      default:
        return state;
    }
}

我会以某种方式需要捕获另一个 reducer 并捕获下一个元素,但我不知道如何去做。

最佳答案

在我看来,事件学生和学生列表本质上应该位于同一个 reducer 内。例如,只有一个瞳孔缩小器,其状态是一个对象。然后像现在一样采取行动。

话虽如此, reducer 应该是纯粹的,没有任何副作用,因此不是做你想做的事情的地方。您可以做的是计算您的 reducer /操作之外的下一个学生,例如在某个组件中单击按钮,然后将其传递给您的 update_active 操作,然后将其传递到您的 reducer 以设置为事件学生。

关于javascript - 从不同的 reducer 访问 reducer ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43069370/

相关文章:

javascript - 基于对象值的火灾事件

javascript - 无法使用react@16.4.2组件和webpack加载静态图像

javascript - 如何在 react 输入组件中制作基于黑名单的过滤器

javascript - Redux/Java:管理标准化数据和每个实体的多个模型表示

react-native - 使用 redux 的选项卡导航器性能问题

一对多关系的 Redux 状态形状

JavaScript 如何将两个数组映射到一个对象

c# - 在 asp.net mvc 中使用 jQuery 动态删除表行

Javascript 表单输入检索

reactjs - 在github上发布react应用程序后出现空白页面