npm 包 redux-session-storage-gatorade 使用教程

简介

redux-session-storage-gatorade 是一个状态管理库 redux 的扩展,它提供了一个简单的方式将 redux 的状态保存到浏览器本地存储中,并且支持使用加密算法对状态进行加密保护。它使用了 sessionStorage 作为数据存储介质,因此可以避免 cookies 和 localStorage 的一些限制,比如在隐身模式下cookies不可用的问题。

本教程将介绍如何安装、配置和使用 redux-session-storage-gatorade。

安装

使用 npm 安装:

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

配置

在你的 redux 应用中添加 redux-session-storage-gatorade 插件。首先创建一个中间件来保存数据到 sessionStorage:

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

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

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

然后将其添加到 redux 的中间件列表中:

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

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

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

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

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

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

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

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

现在,每当 redux 的状态改变时,配置的中间件将自动将新的状态保存到 sessionStorage 中。

使用

在你的 redux 应用中使用 redux-session-storage-gatorade 插件:

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

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

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

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

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

在这个例子中,我们将 counterReducer 的状态保存在 sessionStorage 中,并使用一个 key(root)将其存储在 sessionStorage 中。我们还可以指定是否加密(encrypt)存储的数据。

现在,你的 redux 应用会将新的状态自动保存到 sessionStorage 中,且当用户刷新页面后,应用会从 sessionStorage 中恢复之前的状态。

示例代码

下面是一个计数器应用的完整示例代码,使用了 redux-session-storage-gatorade 插件。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

使用上面的示例代码,你可以创建一个计数器应用,并使用 redux-session-storage-gatorade 插件将其状态保存到 sessionStorage 中。

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


猜你喜欢

  • npm 包 mutt-forms-json-patch 使用教程

    在前端开发中,我们经常需要处理表单数据,并对其进行一系列的操作。而 JSON 同样也是现代 Web 开发中广泛使用的数据格式。mutt-forms-json-patch 就是一个非常实用的 npm 包...

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

    介绍 mongodb-utils 是一个 Node.js 的 npm 包,提供了在 Node.js 中访问和操作 MongoDB 数据库的常见功能。该包包含了一些常用的 MongoDB 操作,如读取、...

    3 年前
  • NPM包xint使用教程

    前言 在前端开发中,处理数据、字符串等常常需要进行一些校验或格式化操作,这些操作如果手动实现会很麻烦,NPM上有很多常用的工具库可以使用,xint就是其中之一。xint是一个JavaScript的数据...

    3 年前
  • npm 包 nth-indexof 使用教程

    简介 nth-indexof 是一个 npm 包,它可以在字符串中找到第 N 次出现某个子字符串的位置。 常见的 JavaScript 函数 indexOf 仅能查找子字符串第一次出现的位置,而使用 ...

    3 年前
  • npm 包 elm-help 的使用教程

    前言 在前端开发中,各种框架和库层出不穷,为开发者提供了极大的便利和帮助。但是随着代码规模的增长,代码的可读性和可维护性也变得越来越重要。在这种背景下,文档化工具成了必不可少的开发工具之一。

    3 年前
  • npm 包 karma-sharding 使用教程

    如果你是一名前端开发者,那么你一定知道 Karma,它是一个用于管理 JavaScript 测试的工具。但是,在测试大型项目时,功能测试可能会耗费数小时,而且长时间运行的测试会增加硬件资源的负担。

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

    前言 在 Web 前端开发中,React 是一个非常流行的框架。但是在使用 React 进行页面开发的时候,路由管理也是一个非常重要的问题。React 官方推荐使用 react-router 进行路由...

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

    什么是 react-snapshot-sitemap? react-snapshot-sitemap 是一个前端工具包,它可以在使用 React 编写的静态站点中生成 sitemap,并使用 Reac...

    3 年前
  • npm 包 format-bcp-47 使用教程

    简介 format-bcp-47 是一个用于规范化 BCP 47 语言标记的 npm 包。BCP 47 是一个标准格式,用于表示语言和地区信息。在前端开发中,我们经常需要处理语言和地区信息,使用 fo...

    3 年前
  • npm 包 bs-algolia 使用教程

    前言 bs-algolia 是一个针对 Algolia 搜索引擎的 BuckleScript 封装库,在 ReasonML 和 OCaml 中使用非常方便,可用于构建前端搜索应用程序。

    3 年前
  • npm 包 loup-garou 使用教程

    什么是 loup-garou loup-garou 是一款前端命令行工具,可以帮助开发者在开发过程中更好地管理、组织和部署项目。 如何安装 loup-garou 你可以通过以下命令在 npm 中安装 ...

    3 年前
  • npm 包 silverback-engine 使用教程

    npm 包 silverback-engine 使用教程 Silverback-engine 是一款基于 JavaScript 的开源游戏引擎。该引擎提供了各种游戏相关的功能,例如精灵、物理引擎、声音...

    3 年前
  • npm包e2e-html-reporter使用教程

    前言 在前端开发过程中,测试是一个非常重要的环节。自动化测试工具是提高测试效率的利器之一。而e2e-html-reporter是一个非常好用的测试报告生成工具。本文将详细介绍e2e-html-repo...

    3 年前
  • npm 包 react-native-enhanced-actionsheet 使用教程

    在 React Native 的开发中,使用弹出菜单是一个很常见的需求。而 react-native-enhanced-actionsheet 就是一个方便易用的 npm 包,可以帮助我们轻松实现弹出...

    3 年前
  • Node-deps-freeimage-raub 使用教程

    随着前端开发的日益发展,越来越多的开发者开始涉足到 NodeJS 的世界里。在 NodeJS 中,npm 成为了最流行的包管理器,它让我们能够轻松地在项目中使用各种依赖包,并提高了开发效率。

    3 年前
  • npm 包 d3-lexicon 使用教程

    前言 d3-lexicon 是一款基于 D3.js 实现的可视化图表库。本文旨在介绍该 npm 包的使用方法,以及如何快速创建精美的图表。 安装 通过 npm 安装 d3-lexicon: --- -...

    3 年前
  • npm 包 scrnhq-formik 使用教程

    在前端开发中,表单是我们经常会遇到的问题。为了避免重复的劳动和提高效率,我们常常会选择使用一些现成的解决方案来处理表单的验证和提交。在这方面,本文要介绍的 scrnhq-formik 是一个非常实用的...

    3 年前
  • npm 包 @instancejs/simple-react-forms 使用教程

    在前端开发中,表单一直是一个重要且不可避免的部分。然而,为了方便表单的管理和验证,我们需要借助一些工具和框架来帮助我们完成这些任务。今天,我要介绍的是一个非常便利的 npm 包,它就是 @instan...

    3 年前
  • npm 包 ellaism-client-binaries 使用教程

    介绍 ellaism-client-binaries 是一个基于 ellaism 区块链的 Node.js 客户端,它提供了一系列用于与 ellaism 区块链进行交互的 API,例如查询账户余额、获...

    3 年前
  • npm 包 hubot-meetbot 使用教程

    前言 在现代化企业中,团队内部沟通以及协作是至关重要的。所以,现在有很多的工具可以用来帮助团队更好的进行沟通和协作。其中, Hubot 是一款非常流行的聊天机器人,它可以根据用户的需求进行查找、提供数...

    3 年前

相关推荐

    暂无文章