npm 包 redux-create-actions 使用教程

阅读时长 6 分钟读完

简介

Redux 是一种 JavaScript 应用程序状态容器,用于管理 React 等视图库的状态。但 Redux 改变一个状态的过程繁琐、重复,因此有了 redux-create-actions 这个 npm 包:

redux-create-actions 将简化 Redux 应用程序的开发,因为它为 Redux 应用程序生成标准化的操作程序。在这篇文章中,我们将学习如何使用 npm 包 redux-create-actions。

安装

我们可以用以下命令安装 redux-create-actions:

用法

redux-create-actions 可以跟踪一些事件、从处理程序中收集 Action 数据并将其发送给 Redux Store,从而简化应用程序的开发。那么,让我们来看看如何在我们的项目中使用它。

首先,我们需要引入 redux-create-actions 和 redux Thunk。这里有一个示例:

此处 createActionsMiddleware() 作为中间件被注入到 createStore 的 applyMiddleware 方法中,用于监听 Action。

然后,在我们的代码中,我们需要创建一个 action,像下面这样:

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

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

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

其中,createAction 的参数是为此操作创建的名称字符串。

接下来,我们定义一个 reducer,处理这个 action:

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

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

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

总结

在本文中,我们学习了如何使用 redux-create-actions 简化 Redux 应用程序的开发。我们安装并将其注入到 createStore 中作为中间件,然后创建 action 和 reducer。

使用 redux-create-actions,我们可以消除重复的代码,并得到更好的代码结构。希望这篇文章给你带来了帮助。

示例代码

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

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

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

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

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

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

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

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

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

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

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

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

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

纠错
反馈