发布于 2018-09-24 05:00:56
一般情况下
在redux中,应用程序的状态表示为传递给应用程序的单个对象。
这个单一的对象是由一个叫做还原器的函数构造的。该函数以当前状态和当前操作作为参数,并返回一个新对象,该对象表示在操作减少后更改的新状态。
它有点类似于Array.prototype.reduce,在这里您得到当前累加器(当前状态)、当前数组条目(当前操作)和返回新累加器(新状态),具体取决于当前累加器和条目(状态和操作)。
组合减速器
尽管如此,这并不意味着您需要将应用程序的所有逻辑放在一个函数中。Redux有一个帮助器combineReducers,它允许您为状态的不同部分编写还原器,然后将它们组合成构建单个状态对象的单个还原器。
例如,对于带有帖子和评论的博客应用程序,您可以这样使用它:
import { combineReducers, createStore } from 'redux';
import postsReducer from './postReducer';
import commentsReducer from './commentsReducer';
const rootReducer = combineReducers({
posts: postsReducer,
comments: commentsReducer,
});
const store = createStore(rootReducer);其中,postReducer和commentsReducer是两个独立的还原器,各自处理其状态的一部分。
https://stackoverflow.com/questions/52463877
复制相似问题