npm 包 @mmajewski/store-devtools 使用教程

介绍

@mmajewski/store-devtools 是一个开源的 npm 包,提供了一个通用的 store 开发调试工具。它适用于任何实现了 Redux store 接口约定的状态管理库,并能够跟踪应用程序状态的变化。

本文将详细介绍如何安装和使用这个 npm 包。

安装

你可以通过 NPM 安装 @mmajewski/store-devtools:

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

使用

使用 @mmajewski/store-devtools 调试应用程序状态,需要先在应用程序中引入它:

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

然后,在创建 store 的时候,将 createDevToolsMiddleware 作为第一个 Redux middleware 传递给 createStoreWithMiddleware 函数,如下所示:

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

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

这个调试工具将会自动添加一个 DevTools 组件到页面上,无需另外配置。你可以通过浏览器的控制台打开调试工具,查看应用程序状态的变化。

在调试工具面板上,你可以看到:

  • 状态的历史记录
  • 改变状态的 action
  • action 的详细信息

示例代码

本文提供一个示例代码,用于演示如何使用 @mmajewski/store-devtools 调试 Redux。

安装依赖

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

创建 store

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

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

创建 Reducer

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

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

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

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

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

创建 Action

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

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

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

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

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

创建组件

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

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

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

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

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

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

创建入口文件

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

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

总结

通过本文的介绍,你现在应该已经掌握了如何使用 @mmajewski/store-devtools 调试 Redux 应用程序状态的技能。这个 npm 包可以大大提高开发调试效率,是前端开发工程师不可或缺的工具之一。

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


猜你喜欢

  • npm 包 react-redux-yasdic 使用教程

    前言 在开发前端项目时,我们常常使用React和Redux来实现复杂的组件和状态管理,但是在大项目中,随着组件的增多,Redux中的代码也会越来越庞大,难以维护。同时,由于Redux的设计理念,我们必...

    3 年前
  • npm包Simpleflowchart.jquery使用教程

    如果你正在寻找一种快速生成流程图的方法,那么Simpleflowchart.jquery 绝对是一款非常好用的npm包。 它可以帮助您快速创建流程图并灵活地定制其外观和功能。

    3 年前
  • npm 包 tempojs 使用教程

    在日常的前端开发中,我们经常需要处理一些时间相关的问题,比如计时器、倒计时等。这时候,一个好用的时间处理库可以极大地提升我们的开发效率。而 tempojs 就是一个非常实用的 npm 包,可以帮助我们...

    3 年前
  • npm 包 html5-media-player 使用教程

    在 Web 前端开发中,使用多媒体播放器是很常见的需求。html5-media-player 是一个基于 HTML5 的多媒体播放器,可以在浏览器中播放各种类型的音频和视频文件。

    3 年前
  • ng2-alfresco-aos-editonline NPM 包使用教程

    什么是 ng2-alfresco-aos-editonline? ng2-alfresco-aos-editonline 是一个基于 Angular 框架和 Alfresco Open Source ...

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

    在前端开发中,我们经常需要使用各种 UI 库来实现页面的布局和交互效果。而使用 npm 包管理器来引入这些库已经成为了主流。本文将介绍一个优秀的 npm 包——zhaopin-ui 的使用方法,希望能...

    3 年前
  • npm 包 stylelint-config-fhfe 使用教程

    前言 在前端开发中,CSS 的编码规范非常重要,规范的代码可以提高可读性,降低维护成本。而 npm 中有一款 CSS 样式检查工具 stylelint,可以检查 CSS 是否符合当前项目的编码规范。

    3 年前
  • npm 包 xreactive-react-native-storage 使用教程

    简介 xreactive-react-native-storage 是一个基于 React Native 的本地存储组件。它使用了 AsyncStorage 实现本地数据存储和读取,并提供了一些实用的...

    3 年前
  • npm 包 zotis-express 使用教程

    介绍 zotis-express 是一个 npm 包,它提供了一个可扩展的 Node.js Web 应用程序框架,用于快速轻松地创建 Web 应用程序和 API。zotis-express 底层使用 ...

    3 年前
  • npm 包 element-table-wrapper 使用教程

    在前端开发中,数据表格的展示是非常常见的需求。此时,我们可以使用 vue-element-admin 等框架来快速构建一个数据表格的布局,但是对于表格中的一些复杂操作,我们通常需要写一些自定义的函数来...

    3 年前
  • npm 包 koa2-heartbeat 使用教程

    什么是 koa2-heartbeat koa2-heartbeat 是一个基于 koa2 的心跳检测中间件,主要用于监测服务器是否正常运行。该中间件可以帮助开发者快速找到服务器故障的原因,提高了开发效...

    3 年前
  • npm 包 mocha-testrail-advanced-reporter 使用教程

    简介 mocha-testrail-advanced-reporter 是一个能够将 mocha 测试结果与 TestRail 整合的 npm 包。使用该包可以实现在 TestRail 上自动创建和更...

    3 年前
  • npm 包 z-social-links 使用教程

    介绍 随着社交媒体的流行,社交媒体链接已经成为网站中不可或缺的一部分。为了方便在网站中添加社交媒体链接,npm 上已经有了很多开源的包。其中,z-social-links 是一个非常实用的包,它可以帮...

    3 年前
  • npm 包 react-native-proapps-2fa 使用教程

    介绍 react-native-proapps-2fa 是一个为 React Native 应用开发者提供的一款支持两步验证的 npm 包。该包可以帮助开发者方便地在自己的应用中集成两步验证功能,提高...

    3 年前
  • npm 包 @rijk/prepositions 使用教程

    前端开发中,我们经常需要用到英语的介词,如 in、on、at、to 等等。而这些介词在不同的语境下含义又有所区别。为了方便开发者运用这些介词,npm 上发布了一个名为 @rijk/prepositio...

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

    run-sql-cli 是一个方便的命令行工具,用于在命令行中运行 SQL 文件或命令,并将结果输出到终端或文件中。 安装 --- ------- -- -----------使用示例 运行一个 SQ...

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

    Node.js 中的 fs 模块是用来读写文件的核心模块,但是其操作过程极其繁琐,需要写大量的回调函数。因此,在实际应用中,很多开发者都会选择使用 Promise 风格的库来简化代码的编写。

    3 年前
  • npm 包 hys-test-npm-lib 使用教程

    在前端开发过程中,我们通常会使用许多第三方库或工具来帮助我们更有效地开发。其中,npm 包是前端开发中最常用的一种工具。npm(Node Package Manager)是一个 Node.js 的包管...

    3 年前
  • npm 包 payment-webfont 使用教程

    前置知识 在学习本教程之前,我们需要了解以下的前置知识: npm 的基本使用方法 HTML 和 CSS 的基础语法 如果你已经掌握以上基础知识,那么我们就可以开始介绍 npm 包 payment-...

    3 年前
  • npm 包 qpid-ember-base 使用教程

    介绍 qpid-ember-base 是一个用于构建基于 ember.js 的 web 应用的 npm 包。它提供了一些基础的组件和工具,可以帮助前端开发者更加高效地开发和维护 web 应用。

    3 年前

相关推荐

    暂无文章