npm 包 redux-wrangler 使用教程

前言

Redux 是一种 JavaScript 状态容器,用于编写可预测化应用程序的完美工具。它驱动着许多交互且高度动态的 Web 应用程序。

然而,Redux 并不是一个完美的解决方案。在 API 方面,它有时会变得很冗长和枯燥。我们可以使用 Redux-wrangler,这是一个由节点组合而成的库,它通过连接动作和 reducers,提供了一个高效简单的方式来处理 Redux。

本文将详细介绍如何在您的项目中使用 redux-wrangler

安装过程

在项目文件夹中,运行以下命令来安装 Redux-wrangler:

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

或者你也可以使用 yarn

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

Redux-wrangler 的核心是一个名为 Wrangler 的对象。 Wrangler 允许我们创建新的动作,并使用映射操作将它们与 reducers 进行关联。

API

以下是 Wrangler 的主要方法:

Wrangler.createAction(actionName, payloadCreator)

参数

  • actionName(string): 创建新动作的名称。
  • payloadCreator(function): 这是一个可选的函数,允许您同时传递更多的数据到动作中。

例子

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

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

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

Wrangler.createReducer(initialState, handlers)

参数

  • initialState: state 的初始值。
  • handlers(object): reducers 的映射操作。

例子

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

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

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

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

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

Wrangler.createSlice(options)

参数

  • name(string): 纪录的名称,会作为 action type 的前缀和 reducer 的键值。
  • initialState: function(state): 纪录的初始状态。
  • reducers(object): 纪录的 reducers 对象。

例子

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

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

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

现在,您已经准备好在您的项目中开始使用Redux-wrangler 了。 让我们看看如何编写一些具体实例。

例子

创建动作和 reducer

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

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

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

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

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

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

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

通过调用 createAction 函数可以创建一个新的动作,包括给他一个名称和一个可选的 payloadCreator, 这允许您同时传递更多的数据到动作中。

使用 createReducer 函数,将初始化状态和 “handlers” 对象传递给它。这样,我们就可以通过使用 Wrangler 所定义的动作,实现一个新的 reducer 映射操作。

创建 slice

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

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

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

在这个例子中,我们使用 Wrangler.createSlice 函数,它需要包含 nameinitialStatereducers 三个属性。这个函数将在存储中创建一个名为 todos 的切片记录,然后返回一个包含 actionsreducer 的对象。

结论

Redux-wrangler 让您可以使用关于处理动作和 reducers 的最佳实践。总体而言,这个库大量减少了 Redux 的代码量。 如果你想节约时间,又想驾驭 Redux,请使用 Redux-wrangler。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005768081e8991b448eaa17


猜你喜欢

  • npm 包 mecjs 使用教程

    在前端开发中,有许多不同的库和框架可以帮助我们完成不同的任务。其中,npm 是最受欢迎的软件包管理器之一,它提供了数以万计的 JavaScript 包。在本文中,我们将介绍一个名为 mecjs 的 n...

    3 年前
  • npm 包 liferay-osgi-watch 使用教程

    简介 liferay-osgi-watch 是一个为 Liferay Portal OSGi 模块系统提供监视的 npm 包。它可以监控本地文件系统的指定文件夹,一旦文件夹中的模块发生了更改,它就能自...

    3 年前
  • npm 包 react-wiz-bootstrap3-renderer 使用教程

    什么是 react-wiz-bootstrap3-renderer react-wiz-bootstrap3-renderer 是一个 npm 包,用于渲染 react-wiz 步骤向导组件的 Boo...

    3 年前
  • npm 包 @hakatashi/babel-plugin-react-svg 使用教程

    前言 在前端开发中,SVG 可以用于实现各种炫酷的效果,比如图标、动画等等。但是,要在 React 项目中使用 SVG 却有一些棘手的问题,比如 SVG 代码的复杂度、SVG 文件的引入和管理等等。

    3 年前
  • npm包aframe-event-decorators使用教程

    简介 aframe-event-decorators是一个npm包,它提供了一组装饰器来简化A-Frame中的事件监听器注册。如果你的项目使用A-Frame并且需要大量的事件监听器,那么aframe-...

    3 年前
  • npm 包 bai-qq_map 使用教程

    引言 随着互联网的发展,地图服务的需求越来越大,特别是在前端领域。而在前端开发中,使用地图服务是一件比较麻烦的事情,需要自己去调用各种 API,并对其进行处理,这时候我们就需要一款好用的地图服务包。

    3 年前
  • npm 包 ember-data-sailsjs 使用教程

    在前端开发中,使用框架和工具是很常见的方式,它可以让我们更快速地开发出高质量的应用。而 npm 包 ember-data-sailsjs 就是一款前端框架,它可以帮助我们更轻松地使用 sails.js...

    3 年前
  • npm包 @ekiras/markdown-it 使用教程

    简介 @ekiras/markdown-it 是一个用于 Node.js 和浏览器的 Markdown 解析器。该包基于markdown-it和highlight.js开发而成,具有很多定制的选项和插...

    3 年前
  • npm 包 hash-gen 使用教程

    在前端开发中,我们经常需要对字符串进行哈希散列。哈希散列可以将字符串缩短并且不可逆。这种技术经常用于密码存储、缓存键值和唯一标识等方面。在 Node.js 中,我们可以使用 hash-gen 这个 n...

    3 年前
  • npm 包 multilist-innoto 使用教程

    multilist-innoto 是一个在前端开发中非常实用的 npm 包,它可以帮助我们实现多级联动选择框。在本篇文章中,我们将介绍 multilist-innoto 的使用方法,并提供详细的示例代...

    3 年前
  • npm 包 pompano 使用教程

    简介 pompano 是一个基于 React 的 UI 组件库,适用于 Web 和移动端开发。它提供了丰富的 UI 组件和样式,可以帮助开发者快速构建美观和易于使用的界面。

    3 年前
  • npm 包 @theia/preferences-api 使用教程

    介绍 @theia/preferences-api 是一个用于实现个人喜好管理的可扩展 API,可以用于 Theia、VSCode 等编辑器的扩展开发。 安装 使用 npm,即可快速集成 @theia...

    3 年前
  • npm 包 egg-dotenv 使用教程

    随着前端开发的流行,越来越多的开发者开始使用 Node.js 进行开发。而 npm 作为 Node.js 生态系统中的重要组成部分,为开发者提供了海量的模块和包。其中,egg-dotenv 是一款非常...

    3 年前
  • npm 包 gulp-protobufjs-new 使用教程

    什么是 gulp-protobufjs-new? gulp-protobufjs-new是一个用于将 Protocol Buffers(简称protobuf)文件编译为 JavaScript 代码的g...

    3 年前
  • npm 包 pjh-mobile-ui 使用教程

    在现代前端开发中,借助互联网上已有的资源可以大大提高开发效率,逐渐成为了国际化开发方式。其中,npm 是前端开发中包管理工具的首选。在众多 npm 包中,pjh-mobile-ui 是一个非常优秀的移...

    3 年前
  • npm 包 simple-logging 使用教程

    简介 simple-logging 是一个小巧的 npm 日志记录包。它具有轻量级、简单易用、高度可配置的特点。其中包括了大量的选项,如:输出格式自定义、打印级别过滤、异步日志记录等。

    3 年前
  • npm 包 cal-util 使用教程

    cal-util 是一个用于处理日历的 npm 包,提供了一些常用的日历操作方法,包括计算两个日期之间的天数、判断某一年是否为闰年等等。此外,它还可以帮助我们更方便地生成日历。

    3 年前
  • npm 包 khabargardi-video-controll 使用教程

    在前端开发中,视频播放控制是一个很常见的需求。但是,每次都写一遍控制代码实在太麻烦了。好在,有一款名为 khabargardi-video-controll 的 npm 包可以帮助我们轻松实现视频播放...

    3 年前
  • npm 包 ngx-scrollup 使用教程

    随着网页内容的增多,用户需要不断地向下翻页,很容易导致疲劳感。ngx-scrollup 是一个前端 npm 包,可以帮助开发者在网页中添加一个滚动到顶部的按钮,方便用户快速返回页面顶部。

    3 年前
  • npm 包 shi-fu-mini 使用教程

    在前端开发中,我们经常会需要使用一些辅助工具来提高我们的开发效率,如今,npm 已经成为了前端开发中使用最广泛的一个包管理工具。而在这里,我们将会介绍一款名叫 shi-fu-mini 的 npm 包,...

    3 年前

相关推荐

    暂无文章