Redux 入门(2):Redux 基础应用

阅读时长 6 分钟读完

在上一篇文章中,我们了解了 Redux 的基本概念和工作原理,本篇文章将深入探讨 Redux 的基础应用。

Redux 中的 Action

Redux 中的 Action 是一个包含数据的对象,用于描述发生了什么事情。例如,我们可以定义一个增加计数器值的 Action:{ type: 'INCREMENT', payload: 1 },其中 type 字段表示 Action 的类型,payload 字段表示 Action 携带的数据。

一般来说,Action 会被封装为一个函数,称为 Action Creator。例如,定义一个增加计数器值的 Action Creator 可以这样写:

Redux 中的 Reducer

Redux 中的 Reducer 是一个纯函数,用于处理 Action 并返回新的状态。Reducer 接收两个参数:当前状态和 Action,然后根据 Action 的类型返回新的状态。例如,我们可以定义一个计数器 Reducer:

-- -------------------- ---- -------
-------- -------------------- - -- ------- -
  ------ ------------- -
    ---- ------------
      ------ ----- - ---------------
    ---- ------------
      ------ ----- - ---------------
    --------
      ------ ------
  -
-

在 Redux 应用中,通常会有多个 Reducer,每个 Reducer 只负责处理全局状态中的一部分数据。

Redux 中的 Store

Redux 中的 Store 是应用的唯一数据源,用于存储全局状态。Store 通过 Reducer 更新状态,每次更新都会生成一个新的状态。可以通过 store.getState() 方法获取当前状态。例如,定义一个 Store 并连接计数器 Reducer 可以这样写:

Redux 的基础使用

使用 Redux 的基本流程如下:

  1. 定义 Action 和 Action Creator
  2. 定义 Reducer
  3. 创建 Store 并连接 Reducer
  4. 分发 Action 修改状态
  5. 监听状态变化

下面我们将通过一个简单的示例来了解如何使用 Redux。

示例代码

我们使用 React 和 Redux 实现一个简单的计数器应用,在页面上点击按钮可以增加或减少计数器的值。

Action 和 Action Creator

定义 incrementdecrement Action 和对应的 Action Creator:

-- -------------------- ---- -------
------ ----- --------- - ------------
------ ----- --------- - ------------

------ -------- ---------------- -
  ------ - ----- ---------- -------- ----- --
-

------ -------- ---------------- -
  ------ - ----- ---------- -------- ----- --
-

Reducer

定义计数器 Reducer:

-- -------------------- ---- -------
------ - ---------- --------- - ---- ------------

------ ------- -------- -------------------- - -- ------- -
  ------ ------------- -
    ---- ----------
      ------ ----- - ---------------
    ---- ----------
      ------ ----- - ---------------
    --------
      ------ ------
  -
-

Store

创建 Store 并连接 Reducer:

分发 Action

在 React 组件中分发 Action:

-- -------------------- ---- -------
------ - ------- - ---- --------------
------ - ---------- --------- - ---- ------------

----- ------- ------- --------------- -
  --------------- - -- -- -
    ------------------------
  --

  --------------- - -- -- -
    ------------------------
  --

  -------- -
    ------ -
      -----
        -------------------------------
        ------- -----------------------------------------
        ------- -----------------------------------------
      ------
    --
  -
-

-------- ---------------------- -
  ------ - ------ ----- --
-

----- ------------------ - - ---------- --------- --

------ ------- ------------------------ -----------------------------

监听状态变化

通过 store.subscribe 方法监听 Store 中状态的变化:

总结

本篇文章深入探讨了 Redux 的基础应用,让我们了解了如何定义 Action 和 Action Creator、定义 Reducer、创建 Store 并连接 Reducer、分发 Action 修改状态以及监听状态变化。通过这些应用,相信读者已经对 Redux 的基础使用有了更深入的理解。在实际项目中,Redux 的应用也是非常灵活的,可以为开发者提供更多的解决方案。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65227c9295b1f8cacd9f9bb0

纠错
反馈