📌  相关文章
📜  从 'redux' 导入 combinereducers - Javascript (1)

📅  最后修改于: 2023-12-03 15:21:51.865000             🧑  作者: Mango

从 'redux' 导入 combineReducers - Javascript

Redux是一个JavaScript库,用于管理应用程序的状态。在Redux中,状态存储在单一的对象中称为Store。Store的更新只能通过dispatch函数调用由Redux创建的Action。

combineReducers是Redux中的一个辅助函数,用于将多个reducers组合为一个单一的reducer函数。一个reducer函数是一个函数,它接收先前状态和一个action,并返回一个新的状态。combineReducers负责将多个reducer函数合并为一个,使得应用程序状况更加可读和可维护。

使用combineReducers时需要从'redux'库中导入,如下所示:

import { combineReducers } from 'redux';

combineReducers函数接收一个包含多个reducer函数的对象,返回一个新的reducer函数。

以下是使用combineReducers的示例代码:

import { combineReducers } from 'redux';

// 第一个reducer函数
function todos(state = [], action) {
  switch (action.type) {
    case 'ADD_TODO':
      return state.concat([action.text]);
    default:
      return state;
  }
}

// 第二个reducer函数
function visibilityFilter(state = 'SHOW_ALL', action) {
  switch (action.type) {
    case 'SET_VISIBILITY_FILTER':
      return action.filter;
    default:
      return state;
  }
}

// 将两个reducer函数组合起来
const todoApp = combineReducers({
  todos,
  visibilityFilter
});

export default todoApp;

以上示例代码使用两个reducer函数来分别处理todo应用程序中的'添加待办事项'和'设置可见性过滤器'这两个Action。

使用combineReducers将两个reducer函数组合成一个单一的reducer函数,使得应用程序的状态更加可读和可维护。