npm 包 redux-concise 使用教程

Redux 是 React 中非常流行的状态管理工具,但是它的使用需要复杂的代码和配置。为了方便 Redux 的使用,出现了许多封装工具。其中一个被广泛使用的工具是 redux-concise。

redux-concise 提供了一个简化 Redux 使用的 API,并在内部处理了各种配置细节和繁琐的代码。使用它能够帮助我们更快、更方便地创建 Redux 应用。

安装

使用 npm 安装:

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

基础用法

首先,我们需要定义 Redux 的状态和操作。这是我们将要存储的所有数据以及更改数据的方法。

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

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

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

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

接下来,我们需要创建一个 Redux 存储对象,并在其中注册状态和操作。

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

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

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

最后,我们需要将存储对象注入到我们的 React 应用中。

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

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

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

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

现在我们就设置好了 Redux 应用。我们可以在组件中通过 useSelectoruseDispatch 钩子访问状态和操作。

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

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

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

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

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

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

这就是 redux-concise 基础使用的介绍。接下来我们将会深入了解更多高级用法。

高级用法

异步操作

Redux 是同步的,但在实际应用中,我们经常需要与服务器交互、读取文件等等异步操作。redux-concise 允许我们通过中间件来处理这些异步操作。

我们将使用 redux-thunk 作为中间件。redux-thunk 允许我们在 Redux 的操作中返回函数而不仅仅是对象,这个函数可以进行异步操作并调度其他操作。

首先我们需要安装 redux-thunk:

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

接着,我们可以在 store.js 中使用 redux-thunk。

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

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

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

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

现在我们可以在操作中返回一个函数,函数将会自动接收 dispatchgetState 方法。

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

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

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

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

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

这种方式非常有用,因为它允许我们封装数据获取逻辑,并在需要时自动获取数据。

强类型

Redux 应用的一个主要问题是数据类型不一致。这个问题通常通过文档和单元测试解决,但是使用 TypeScript 或 Flow 可以更好地解决它。

使用 redux-concise,您可以为每个操作和状态指定类型,以使它们变得强类型。指定类型将为您提供代码自动完成和类型检查,这对于大型应用程序非常有用。

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

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

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

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

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

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

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

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

这就是 redux-concise 的高级用法。它提供了许多方便的方式来简化 Redux 应用的创建,并使其更可靠和可读。

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


猜你喜欢

  • npm 包 @julien.cousineau/kdbush 使用教程

    KDBush 是一个轻量级的 JavaScript 库,用于对经纬度坐标进行高效的 K-Dimensional Boxing (K-D 树) 聚类。它可以方便、快速、节省内存地查询最近的点,且运行速度...

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

    在前端开发中,我们经常需要处理 DOM 元素的焦点状态。有时候我们需要对焦点状态进行自定义样式处理,这时候就需要通过操作 DOM 来实现。如果一个页面中有很多需要自定义焦点样式的元素,那么手动操作 D...

    3 年前
  • npm 包 spreading 使用教程

    npm (Node Package Manager) 是 Node.js 管理包 (package) 的工具。近年来,前端开发者也逐渐开始使用 npm 来管理自己的项目。

    3 年前
  • npm 包 curo-cli 使用教程

    curo-cli 是一个基于 Node.js 的命令行工具,可以帮助前端开发者完成一些重复性的工作,例如创建组件、生成模板文件、自动生成文件目录结构等。curo-cli 在前端开发中大有用处,本篇文章...

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

    simple-continuation-storage 是一个轻量级的 npm 包,旨在简化前端 web 应用程序中的数据存储。它提供了一种基于 Promise 的持续存储机制,便于在应用程序之间保持...

    3 年前
  • npm 包 @vitruviantech/wordpress 使用教程

    前言 WordPress 是目前全球使用最广泛的 CMS (内容管理系统),许多网站都基于它来开发。而金丝雀测试(Canary Testing)是一种新兴的软件测试方法,它可以帮助我们更快速地构建和测...

    3 年前
  • npm 包 ti.growingform 使用教程

    在前端开发中,我们经常需要对表单进行操作,ti.growingform 是一个基于 Vue 的表单生成工具,它提供了一系列的组件,使得我们可以快速地构建出高质量的表单页面。

    3 年前
  • npm 包 @jimpick/w3c-keyname 使用教程

    前言 在前端开发过程中,我们经常会涉及到使用键盘快捷键或者监听按键事件。使用event.key来获取按键名是相对困难的,因为它返回的只是按键的 Unicode 值。

    3 年前
  • NPM包React Native Multi Switch使用教程

    React Native Multi Switch是一个npm包,可以帮助开发人员轻松创建可定制的React Native多重开关。本文将介绍如何使用React Native Multi Switch...

    3 年前
  • npm 包 @spiregg/styleguide 使用教程

    在现代化的 Web 开发中,使用标准的样式维护方式来保持项目一致性变得越来越重要。 一个好的样式指南库(styleguide)可以通过提供一致性的编写规范、颜色、字体和交互等方面的帮助来加速项目的构建...

    3 年前
  • npm 包 ci-run-staged 使用教程

    简介 在开发的过程中,我们需要进行代码检查、格式化、测试等操作。ci-run-staged 是一款能够帮助我们在 Git 提交的时候自动执行预定义的操作的工具,它能够自动运行通过 Git 暂存的代码,...

    3 年前
  • npm 包:ebabel-utils 使用教程

    在前端开发过程中,我们时常需要使用到 Babel 进行 JavaScript 代码转换。为了提高效率,我们可以使用 npm 包 ebabel-utils 来简化 Babel 的使用流程。

    3 年前
  • npm 包 ftrm-ctrl 使用教程

    在前端领域中,npm 包是非常常见的工具,它们可以让我们更轻松、高效地开发 Web 应用。其中,ftrm-ctrl 是一个非常实用的 npm 包,它可以帮助我们在 Web 应用中实现数据流控制。

    3 年前
  • npm 包 gendiff0th0n 使用教程

    前言 gendiff0th0n 是一个非常实用的 npm 包,可以帮助开发者快速进行文件比较,检测出差异,用于前端项目版本控制和代码维护等方面。 在本文中,我们将详细介绍 gendiff0th0n 的...

    3 年前
  • npm 包 json-version-control 使用教程

    在前端开发中,大多数项目多少会使用到 npm 包管理工具。而在实际项目开发中,npm 包的版本管理是很重要的一环。而为了方便进行版本管理,我们这里向大家介绍一款 npm 包:json-version-...

    3 年前
  • npm 包 uniq-string 使用教程

    前言 在前端开发中,我们经常需要生成一些唯一的字符串,比如用于订单号、用户 ID 等。这时候,我们可以通过一些代码手动实现唯一字符串的生成,但是这种方式不仅繁琐,而且容易出现重复。

    3 年前
  • npm 包 curo 使用教程

    前言 在前端开发中,我们经常需要进行 DOM 操作,以及对 DOM 元素的样式和属性进行一系列的操作。curo 是一个轻量级且易于使用的 JavaScript 库,用于将 DOM 操作简化为更易于管理...

    3 年前
  • npm 包 @jimpick/crel 使用教程

    在开发前端项目的时候,经常需要动态创建 DOM 元素,手动用 JavaScript 拼接 HTML 代码很麻烦,而使用 @jimpick/crel 包可以方便快捷地创建 DOM 元素。

    3 年前
  • npm 包 @jimpick/orderedmap 使用教程

    在前端开发中,数据的排序和搜索十分关键,而有序的 Map 可以在这方面提供很好的帮助。npm 包 @jimpick/orderedmap 则是一款高效的有序 Map 实现。

    3 年前
  • npm包@jimpick/rope-sequence使用教程

    前言 在 Web 开发中,前端的技术发展日新月异,各种方便快捷的工具层出不穷。其中 Node.js 极大地方便了我们的前端开发,尤其是 npm 包的出现,使得前端开发者可以轻松地引用别人写好的第三方工...

    3 年前

相关推荐

    暂无文章