Redux 所说的有一个特定的函数占据了应用程序的整个状态是什么意思?


  • 我刚刚开始学习redux是如何工作的: Redux 是什么意思,有一个特定的函数获取应用程序的整个状态,并调度操作并返回应用程序的整个新状态? 这在企业级应用程序单页应用程序ERP系统上是否可见,或者我误解了什么?
    还有函数如何是纯的并在以前的状态下变化" 使用先前状态的 ref 并向其添加新数据,然后将其作为对象返回? 如果不是,那不会影响系统每次复制整个系统状态的速度,对于ERP系统来说?

我获得此信息的课程 1

我获得此信息的课程 2

一般的

Redux

在 redux 中,应用的状态表示为传递给应用的单个对象。

这个单一对象是由一个称为reducer的函数构造的。此函数将当前状态和当前操作作为参数,并返回一个新对象,该对象表示操作减少后更改的新状态。

这有点类似于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);

其中postReducercommentsReducer是两个独立的化简器,每个化简器处理其状态部分。

最新更新