npm 包 immdux 使用教程

简介

immdux 是一个基于 Immutable.js 和 React Redux 的库,它提供了一种简单的方式来对 Redux 状态树中的 Immutable 对象进行操作。

安装

在安装 immdux 之前,你需要确保你的项目已经安装了以下依赖:

  • react
  • react-redux
  • redux
  • immutable

安装 immdux:

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

基本用法

  1. 定义状态树
------ - --- - ---- ------------

----- ------------ - -----
  ------ --
  ----- -------
---
  1. 创建 Action
----- --------- - -- -- --
  ----- ------------
---

----- ---------- - ------ -- --
  ----- --------------
  -------- -
    -----
  --
---
  1. 创建 Reducer
------ - ------------- - ---- ---------

----- ------- - --------------------------- -
  ---------- ------- -- --------------------- ------- -- ----- - ---
  ------------ ------- - -------- - ---- - -- -- ----------------- ------
---
  1. 创建 Store
------ - ----------- - ---- --------
------ - -------- - ---- --------------
------ - --------------------------------------- - ---- ----------------------------------
------ ------- ---- ------------

----- ----- - ------------
  --------
  ----------------
    ------------------------------------------
  --
--
  1. 使用
------ ----- ---- --------
------ - ------- - ---- --------------
------ - ---------- ---------- - ---- ------------

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

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

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

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

深度用法

与不可变对象进行操作的 immdux 提供了更方便的操作方式。

Basic API

API 描述
updateIn(path, fn) 使用提供的函数更新深嵌套的对象
mergeIn(path, value) 合并给定键路径的源对象的值与提供的值。使用 Map#mergeDeepIn
deleteIn(path) 递归删除当前键路径的对象。使用 Map#deleteIn
setIn(path, value) 设置键路径对应的值。使用 Map#setIn
getIn(path, notSetValue?) 获取指定键路径的值。使用 Map#getIn

示例代码

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

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

总结

immdux 提供了对不可变对象的便捷操作,让我们更容易地管理 Redux 状态树中的 Immutable 对象。在实践中,我们可以使用 immdux 来简化代码,提高代码的可读性和可维护性。

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


猜你喜欢

  • 使用 code-snipper 接管你的代码片段管理

    在日常的开发过程中,我们经常遇到需要复用特定代码片段的情况。不管是之前团队已有的代码片段,还是网络上分享的一些高质量片段,代码复制粘贴这一流程都极其枯燥且容易出错。

    3 年前
  • npm包 `@weus/imagemin-jpegtran` 使用教程

    在前端开发的过程中,经常需要处理图片,特别是对图片进行压缩以提高页面的加载速度。@weus/imagemin-jpegtran 是一款基于 Node.js 的图片压缩工具,针对 jpg 格式进行优化。

    3 年前
  • npm 包 jquery-bootstrap-wizard 使用教程

    jquery-bootstrap-wizard 是一个基于 jQuery 和 Bootstrap 的表单向导插件,可以快速创建响应式、易于定制的表单向导界面。本文将介绍如何使用该插件进行表单向导的开发...

    3 年前
  • npm 包 vis-nn 使用教程

    前言 在现代 Web 应用开发中,前端开发越来越重要。随着人工智能及深度学习技术的发展,前端也开始涉及到这些领域。本文就是介绍一种可以在前端使用神经网络模型的 npm 包 vis-nn 的使用教程。

    3 年前
  • npm 包 rc_notify_lib 使用教程

    简介 在前端开发中,经常需要在网页中添加通知或提示功能,以便用户能够更加方便地使用网页。npm 包 rc_notify_lib 是一种强大的通知组件库,可以轻松地为你的网页添加各种类型的通知功能。

    3 年前
  • npm 包 h264ize 使用教程

    npm 包 h264ize 使用教程 介绍 h264ize 是一个 Node.js 模块,它可以将 AVI 或 MOV 格式的视频转换为 H.264 编码的 MP4 格式。

    3 年前
  • npm 包 btcnanod-rpc 使用教程

    前言 在区块链领域,比特币是最为著名的货币。同时,比特币的小兄弟——nano 也是由比特币代码 Fork 而来的一个去中心化货币。而 btcnanod-rpc 则是一个 npm 包,它允许开发人员通过...

    3 年前
  • npm 包 vue-ueditor 使用教程

    前言 Vue.js 是一款流行的前端框架,而 ueditor 是一款强大的富文本编辑器。在前端开发中,如何快速、高效地实现富文本编辑功能是很重要的。因此,我们经常会使用 Vue.js 和 uedito...

    3 年前
  • npm包 bitexchange.js-node 使用教程

    前言 随着全球数字货币的不断发展,加密货币的交易所成为越来越多人的投资热门之一。许多开发者需要在其应用程序中集成加密货币交易,bitexchange.js-node 就是这样一个npm包,用于帮助开发...

    3 年前
  • npm 包 qm-youtu 使用教程

    随着人工智能和机器视觉的发展,图像识别已经成为了日常生活中无法避免的问题。在前端领域中,通过使用 npm 包 qm-youtu,我们可以实现人脸识别、人脸比对、人脸搜索等功能。

    3 年前
  • npm 包 report-360 使用教程

    什么是 report-360? report-360 是一个用于前端性能监控的 npm 包,通过它可以监控网站或应用的各项性能指标,从而帮助前端开发人员了解并优化网站性能,提升用户体验。

    3 年前
  • npm 包 sweetalert2-polymer 使用教程

    引言 前端编程中经常需要使用弹窗,SweetAlert2-polymer 是一个基于 Polymer 开发的弹窗 npm 包,提供了简单、易用和美观的弹窗组件。本文将详细介绍如何安装和使用 Sweet...

    3 年前
  • npm 包 jpeg-recompress-bin-vendor 使用教程

    前言 在前端开发过程中,我们经常需要对图片进行压缩以减小图片大小提高页面加载速度。而其中一种常见的图片压缩方式是使用 jpeg-recompress,一个开源的 JPEG 图片压缩工具。

    3 年前
  • npm包 imagemin-jpeg-recompress-vendor 使用教程

    前言 在前端开发中,优化图片是提升网站性能和用户体验的重要一环。而 imagemin-jpeg-recompress-vendor 正是一个帮助我们优化 JPEG 图片的 npm 包。

    3 年前
  • npm 包 react-native-button-vmms 使用教程

    介绍 react-native-button-vmms 是一个基于 React Native 开发的 UI 组件库,提供了一些常用的按钮样式,易于使用和定制。 安装 执行以下命令来安装 react-n...

    3 年前
  • npm 包 @hspkg/chain 使用教程

    介绍 @hspkg/chain 是一款适用于前端的链式调用工具库,可以将多个函数以链式方式串联起来,从而简化代码结构,提高代码可读性和可维护性。本教程将详细介绍该工具库的使用方法,包括安装、API 说...

    3 年前
  • npm 包 @weus/imagemin-optipng 使用教程

    介绍 在前端开发过程中,通常需要对图片进行处理。这时候,就需要一款能够进行图像优化的工具。而 @weus/imagemin-optipng 就是针对 PNG 图片格式而开发的一个优化工具。

    3 年前
  • npm 包 @weus/pngquant-bin 的使用教程

    介绍 @weus/pngquant-bin 是一个 npm 包,它提供了 pngquant 的二进制文件。pngquant 是一个用于 PNG 图像压缩的工具,它可以将 PNG 图像压缩到更小的尺寸,...

    3 年前
  • npm 包 require-extension-vue 使用教程

    npm 是一个非常受欢迎的包管理器,它使得开发人员能够轻松地安装、更新和管理自己的应用程序和模块。在前端开发中,使用 npm 安装各种插件和模块已经成为必备技巧之一。

    3 年前
  • npm 包 swiftly-optional 使用教程

    在编写 JavaScript 代码时,可能会遇到某些属性或方法不存在的情况。在这种情况下,使用 if 语句或三元运算符进行检查是一种常用的解决方式。但是如果需要处理多个属性或方法的存在性问题,代码会变...

    3 年前

相关推荐

    暂无文章