问题标签 [redux-persist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
710 浏览

javascript - 尝试实现 redux-persist 后,Reducers 消失了

我正在尝试实施 redux-persist 以仅保留特定的减速器、发票、版本,但就我而言,我的减速器都消失了。

这是入口点:

这是我拥有的减速器文件:

我遵循了很多建议,但我一定遗漏了一些东西。

0 投票
3 回答
3291 浏览

reactjs - action.rehydrate 不是函数

自从我的控制台中的某个时候以来,我一直收到以下错误,我不知道它是什么意思以及它为什么会产生。请在这件事上传播一些信息。 在此处输入图像描述

它说:

package.json 上的 redux-persist 版本:“^5.6.11” 锁定版本:“5.9.1”

存储配置代码:

0 投票
1 回答
1373 浏览

javascript - React Redux 持久化

我刚开始使用 Redux Persist,由于某种原因,我无法让它工作。(无法读取未定义错误的属性“订阅”)

Persistor.js

index.js

使用普通的 Redux 可以正常工作。但是当我尝试切换 Persist Redux 时,我得到了上面写的错误。

0 投票
2 回答
3100 浏览

javascript - 将 redux-persist 与 redux-immutable 一起使用时出错

我尝试将redux-immutableredux-persist一起使用。

我搜索了很多,但我没有找到解决此问题的任何解决方案。

商店.js:

我在控制台中的错误:


笔记:

在 add 之前我没有任何错误redux-persist

如果您有任何想法,请帮助我。

0 投票
0 回答
827 浏览

reactjs - 实施redux-persist后反应本机应用程序保持空白?

每个人

我正在尝试使用 redux-persist 来持久化我的商店,但是在将它实施到我的 app.js 之后,我得到了白屏,我寻找了这个错误,我唯一能找到的就是清除 componentDidMount() 甚至这对我不起作用:

应用程序.js:

// 普通代码

}

商店.js:

0 投票
2 回答
1490 浏览

reactjs - 获取存储数据并调度外部组件反应原生

我需要在反应组件外部访问redux存储数据和调度函数(在utils函数中)

我使用 React Native、Redux、Redux Saga、Redux Persist。我的配置存储文件如下所示:

用户登录后,我将用户信息和 oath2 令牌保存在 redux 的用户 reducer 中,并使用 Redux Persist 持久保存。App.js 就像下面的代码:

现在,在 api.js 我需要访问用户令牌。我需要在每个 axios 请求之前检查 oauth2 令牌过期时间。在 axios 发送请求之前,我调用了 setHeader 函数。我在 api.js 中的代码如下:

当我调用 setHeader 函数时,console.log 显示存储为空,而不是显示 redux 存储数据。有人可以帮忙吗?

0 投票
3 回答
4642 浏览

reactjs - 如何在结束测试之前等待 Redux Persist 补水

我有以下代码:

它使用 redux-persist 来重新水化状态,在完成之前,它将显示加载属性中的内容。我有一个 Jest 测试(只是开箱即用的 react native 附带的默认测试):

但是尽管测试通过了,但我看到仍然发生的动作,persist/PERSIST以及在测试中打印到控制台的值(呈现的输出)是:persist/REHYDRATE

我要做的是等到 redux-persist 完成水合,然后检查渲染值。我怎样才能做到这一点?

0 投票
0 回答
744 浏览

reactjs - 即使成功调度,redux-persist 也不会更新本地存储

在我注销的应用程序中,我this.props.dispatch(setUserSession({}))什至在这里传递了 null 。在 redux-logger 中调度后,我可以看到它已更改为

但是在本地存储中,我仍然可以看到在调度 null 之前存在的 userSession。持久存储将在什么操作或何时更新。

我在注销时将 userSession 设置为 null,但是当用户刷新页面时,由于令牌存在于商店中,因此他在没有登录的情况下重新登录。

而且我不想清除或刷新整个存储,只是那个 userSession 键。

当前商店配置

请提供一些帮助,如果我遗漏了什么,请纠正我。

0 投票
1 回答
3222 浏览

reactjs - 如何将 redux-persist 与自定义中间件一起使用

使用 redux-persist 5.10.0。

使用官方文档对其进行配置后,它运行良好:

和:

正如您从我的 configureStore.js 文件中看到的那样,我有一个用于 axios 的自定义中间件。我正在使用 JWT 进行身份验证。该中间件将检查一个名为的操作常量RECEIVE_LOGIN,以便它可以将返回的令牌分配给我的 axios 实例的默认标头:

但是由于 redux-persist,我无法从 action.type 中获取我的自定义类型 - RECEIVE_LOGIN - 我得到的是persist/PERSIST,然后是persist/REHYDRATE。我什至找不到我的自定义类型action

我查了一下,但找不到任何带有自定义中间件的示例。

所以我的问题是,如何redux-persist与自定义中间件一起使用?

0 投票
1 回答
1526 浏览

reactjs - 如何使用 thunk、中间件和不可变 JS 设置 redux-persist?

我正在尝试让 redux-persist 正常工作,但无法按照我的应用程序当前设置的方式来解决。

我应该在哪里添加redux-persist以使其连接到商店并保存到本地存储?

我尝试了很多不同的方法,都错了,错误范围很广。所以没有必要把它们都贴出来。

提前感谢您的帮助:)