Redux 中文文档(核心概念篇)

前言

Redux 是一种用于 JavaScript 应用程序的可预测状态容器。它可以帮助我们管理应用程序的状态,并且是 React 生态系统中最流行的状态管理库。在这篇文章中,我们将介绍 Redux 核心概念,包括状态、行为、reducer、store 和 action,以及如何在应用程序中使用 Redux。

状态

在 Redux 中,状态是应用程序中可以直接操作的所有数据的统称。它们以 JavaScript 对象的形式存储在 Redux store 中。例如,一个电子商务应用程序的状态可能包括以下内容:

行为

在 Redux 中,行为是一种描述应用程序状态更改的方式。它们以 JavaScript 对象的形式表示,并包含一个类型属性和一个可选的负载属性。例如,如果我们要添加一个商品到购物车中,我们可以这样定义一个行为:

Reducer

在 Redux 中,reducer 是一种纯函数,它接受当前状态和行为,并返回一个新状态。它的目的是在状态更改时更新应用程序的状态。例如,如果我们要处理上面的 ADD_TO_CART 行为,我们可以编写以下 reducer:

这个 reducer 接受一个名为 state 的数组和一个名为 action 的行为对象作为参数,并返回一个新的数组,该数组包含所有现有的购物车项以及新的商品。如果行为类型不是 ADD_TO_CART,则返回当前状态。

Store

在 Redux 中,store 是一个保存应用程序状态的容器。它的主要作用是管理应用程序状态的更新,并在发生变化时通知已注册监听器。我们可以使用 Redux createStore() 函数来创建一个新的 store:

这个 store 表示我们的购物车应用程序状态。我们可以使用 store.getState() 方法来获取当前状态:

我们也可以使用 store.dispatch() 方法来分派一个行为:

最后,我们可以使用 store.subscribe() 方法来注册一个监听器,以便在状态更改时获取通知:

Action

在 Redux 中,action 是对状态进行更改的唯一方法。它们是一种描述应用程序状态更改的方式,并被分派到 store 中。例如,如果我们要添加一个商品到购物车中,我们可以这样定义一个行为:

总结

Redux 是一种用于 JavaScript 应用程序的状态管理库。在 Redux 中,状态是应用程序中可以直接操作的所有数据的统称,行为是一种描述应用程序状态更改的方式,reducer 是一种纯函数,它接受当前状态和行为,并返回一个新状态,store 是一个保存应用程序状态的容器,它的主要作用是管理应用程序状态的更新,并在发生变化时通知已注册监听器,action 是对状态进行更改的唯一方法。

我们可以使用 Redux 来管理应用程序的状态,使得应用程序的状态更加可预测和易于维护。如果你想了解更多关于 Redux 的内容,可以参考 Redux 官方文档。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6533a4ec7d4982a6eb73327a


纠错
反馈