npm 包 redux-effect-middleware 使用教程

简介

redux-effect-middleware 是一个用于 Redux 的中间件,它允许您轻松地编写可重用的异步操作,并使您的代码更加易于维护和测试。这个中间件基于redux-thunk,并添加了一些额外的功能来增强您的异步操作。

安装

您可以通过 npm 进行安装:

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

使用

首先,您需要在您的 Redux Store 中创建 redux-effect-middleware 的实例,并将其放在您的中间件链中。例如:

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

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

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

接下来,您可以在您的 Redux Actions 中使用 effect 函数。effect 函数是一个返回 Promise 的函数,它允许您编写异步操作。

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

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

当您调用 fetchData Action 时,它将返回一个 Promise,在 Promise 解决时,您将收到 FETCH_DATA_SUCCESS Action,并且您可以使用数据更新您的 Redux Store。

进阶使用

用 withLoading 高阶函数包装 effect 函数

使用 withLoading 高阶函数包装 effect 函数,可以帮助您处理加载状态并进行错误处理。withLoading 可接受几个参数:

  • startAction: 在异步操作开始时发出的 Action。
  • successAction: 在异步操作成功时发出的 Action,Action 将包含 effect 函数返回的结果。
  • errorAction: 在异步操作发生错误时发出的 Action。
------ - ------- ----------- - ---- -------------------------

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

总结

redux-effect-middleware 是一个非常便捷的中间件,可以帮助我们编写可重用的异步操作,并使我们的代码更易于测试和维护。通过 withLoading 高阶函数的使用,我们可以更好地处理加载状态并进行错误处理。

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


猜你喜欢

  • npm 包 generator-serverless-concourse 使用教程

    前言 现今云计算行业最为流行的主流技术之一便是无服务器技术。无服务器技术让我们可以尽可能地降低运维开销以及更好的利用云资源。而 Concourse 是一个基于无服务器技术的流水线工具,可以让我们更加方...

    3 年前
  • npm 包 brainfucker.js 使用教程

    Brainfuck 是一种极度极简主义的编程语言,同时也是一种露骨的音乐文化,它以其独特的语法结构和极小的可用代码集著称。如果你想在前端开发中使用 Brainfuck 语言,那么可以考虑使用 npm ...

    3 年前
  • npm 包 higlass-labeled-annotation 使用教程

    本文介绍如何使用 npm 包 higlass-labeled-annotation,该包是 higlass 的一个插件,用于为 higlass 中的视图添加标注和注释。

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

    在前端开发中,常常需要使用 modal 弹窗作为界面元素,尤其是在处理表单提交、信息提示等功能时。其中,react-modal-button 是一款可以帮助我们快速构建 modal 弹窗的 npm 包...

    3 年前
  • npm 包 @gik/redux-factory 使用教程

    在前端开发中,Redux 是一种最常见的状态管理工具之一。它使得我们可以轻松地管理复杂的应用程序状态,并拥有一些非常优秀的开源库和工具。其中一个非常优秀的工具就是 @gik/redux-factory...

    3 年前
  • npm 包 crypto-price 使用教程

    在前端开发中,我们经常需要获取加密货币的价格信息,用于展示或计算。此时我们可以使用 npm 包 crypto-price。本文将详细介绍如何使用这个 npm 包,并给出实例代码和学习指导。

    3 年前
  • npm 包 drawers 使用教程

    在前端开发中,使用很多第三方库和工具也是非常常见的。其中,npm 是 node.js 的包管理器,可以方便地管理本地代码依赖。本文介绍一个开源的 npm 包 drawers,它非常适合用于构建可以在屏...

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

    前言 如今,互联网中的大部分应用都需要上传文件功能,例如图片、视频、文档等。因此,云存储服务也应运而生,其中七牛云是一家值得推荐的云存储服务商。七牛云提供了丰富的 API 和 SDK,让开发者能够快速...

    3 年前
  • npm 包 gelf-pro-innervate 使用教程

    简介 在前端开发中,我们经常需要记录日志以便于调试和追踪错误。而 gelf-pro-innervate 是一款能够将日志通过 GELF 协议发送到 Graylog 服务器的 npm 包,它可以帮助我们...

    3 年前
  • npm 包 hyperpad-desktop 使用教程

    简介 Hyperpad-desktop 是一个基于 Electron 的本地文本编辑器,它支持原生渲染,高速响应以及强大的编辑功能。通过 npm 包 hyperpad-desktop,我们可以在命令行...

    3 年前
  • npm 包 ion-affix-allanpoppe 使用教程

    前言 在现代 Web 开发中,网页滚动效果已经成为了一个重要的视觉设计部分。然而,在某些情况下,我们希望某些元素(比如导航栏或者一些信息)一直保持在页面顶部或底部,即使在滚动的情况下也不发生变化。

    3 年前
  • npm 包 layatool 使用教程

    前言 随着前端技术的发展,使用 npm 包加速开发已经成为一种标配。而在众多的 npm 包中,layatool 是一款颇受欢迎的前端工具包,它包含了众多实用的工具函数和 UI 组件,并且支持多语言、响...

    3 年前
  • npm 包 jqtools 使用教程

    什么是 jqtools? jqtools 是一个轻量级的 JavaScript 库,它提供了一系列常用的 jQuery 插件,使得开发者可以使用简单的代码实现一些高级的 UI 交互效果。

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

    前言 近年来,前端在Web开发中的地位越来越重要,因此前端技术也越来越发达。如今,前端框架、库、插件等也层出不穷。npm作为现今最流行的包管理工具之一,让前端开发变得更加高效和便利。

    3 年前
  • npm 包 oauth2-specials 使用教程

    前言 在前端开发中,OAuth2 是一个非常重要的安全协议,用于用户身份认证和授权。然而,OAuth2 的实现并不是一件容易的事情,尤其对于初学者而言。为了简化这个过程,我们可以使用 oauth2-s...

    3 年前
  • npm 包 react-callbacks 使用教程

    前言 在 React 中,使用回调函数是非常常见的操作,回调函数的使用不仅能让组件更加灵活,还能让代码更加简洁。然而,对于有些开发者来说,可能会感到困惑,因为在实现回调函数的过程中,需要注意很多细节。

    3 年前
  • serverless-concourse 使用教程

    在前端开发过程中,如何提高开发效率是一个非常重要的问题。而使用 serverless-concourse 就可以帮助我们更轻松地管理和部署前端项目。 什么是 serverless-concourse ...

    3 年前
  • npm 包 slide-bar 使用教程

    在前端开发中,我们经常需要使用一些特定的组件或插件来实现页面的功能和特效。其中,slide-bar 是一个很实用的工具,可以快速在网页中添加一个滑动条,方便用户进行操作。

    3 年前
  • npm 包 teowgregistrar 使用教程

    teowgregistrar 是一个用于注册组件的 npm 包。它可以帮助前端开发人员方便地实现组件注册、同步以及异步加载等功能,提高前端开发效率,减少代码冗余。本文将详细介绍 teowgregist...

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

    简介 egg-yolk 是一个基于 egg.js 的 web 开发框架,能够帮助开发者快速构建高性能、可扩展、分布式、微服务化的应用程序。其核心理念是约定优于配置,打造了一套完整的脚手架和插件体系,包...

    3 年前

相关推荐

    暂无文章