问题标签 [redux-storage]

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 投票
2 回答
892 浏览

redux - redux-saga 与 redux-saga - 不保存

我正在尝试将 redux-storage 和 redux-saga 中间件用于 redux。每个中间件单独工作都很好,但是当我使用 redux-saga 应用 redux-storage 时,存储不会加载先前的状态。我添加中间件如下:

0 投票
1 回答
1038 浏览

reactjs - 使用 redux-storage 重置存储在本地存储中的状态的问题

我在应用程序中使用 react-storage 将我的状态保存在本地存储中。为了清除状态,我这样做:

engine.save({})理论上应该将我本地存储中的状态保存到一个空对象中。完成此操作后,我希望下一个调度操作的先前状态是那个空对象。但是,不知何故,在 中调度的动作.then仍然引用旧状态,就好像该状态从未被重置。

另外,我一直在尝试使用 localStorage.clear() 来重置状态,但我遇到了同样的问题。关于可能出了什么问题以及如何解决这个问题的任何想法?

0 投票
0 回答
60 浏览

javascript - 从 Redux 存储加载不会完全覆盖初始状态

似乎从Redux 存储加载并没有完全覆盖初始状态,这对我来说似乎是一个错误。(如果不是,请告诉我如何有效地使用它。:))

一个例子:假设这是我的初始状态:

然后,在某些调度中,我更改了 test 的值:

设置了 redux-storage 后,它就被保存了(我猜)。

当我现在关闭/重新打开或重新加载整个应用程序时,我处于以下状态:

我想,foo: 1在这一点上应该没有,不是吗?

至少它在我的应用程序中困扰着我,那么摆脱它的正确方法是什么?redux-storage我可以设置一个配置选项吗?

(在此处查看整个代码。)

0 投票
1 回答
301 浏览

redux - 如何创建具有本地数据存储的 redux 存储?

我对文档感到困惑。我正在尝试使用Redux-storage中间件,这就是他们显示商店是使用中间件创建的方式:

但是Redux 文档显示了这一点:

createStore需要传递初始存储值,但我无法在没有存储的情况下加载存储的值。这是一种捕获 22。我在这里错过了什么?

0 投票
1 回答
505 浏览

reactjs - 如何在挂载时触发操作,但在 redux 存储加载之后

redux-storage用于在刷新等过程中持久化 redux 状态树。

redux-storage-engine-localstorage作为存储引擎。

我的问题与以下顺序有关:
1)加载此持久状态的操作,以及
2)我在componentDidMount生命周期函数中启动的其他一些操作。

因为存储负载发生我触发的某个操作之后,所以我触发的操作可能还没有发生,因为旧状态会覆盖它。


在我的减速器顶部打印出动作类型,在页面加载时我看到:

该操作是在我的组件方法HIDE_MODAL之一中触发的。componentDidMount

存储负载发生在安装我的根节点之前(在创建我的 redux 存储之后):

为什么不会REDUX_STORAGE_LOAD发生在其他所有事情之前,有没有办法确保它发生在其他事情之前?

0 投票
1 回答
32 浏览

reactjs - React App 中的 Redux 不应该在商店中复制

React 18Alpha - Redux 7.2.4 - redux-thunk 2.3.0 - redux-storage 4.1.2

我在 Redux Store 状态中出现以下错误,似乎减速器正在复制每个节点的状态:

在此处输入图像描述

我尝试了许多不同的方法来使状态不重复但一切都失败了,reducers 和操作非常简单,它们采用 userSettings 或 serverSettings 对象,该对象对视图中的对象进行了所有更改以更新店铺:

操作也很简单:

每次分派操作时,我都会将整个 userSettings 对象传递给存储,以保存对对象所做的更改,以使化简器和操作尽可能简单:

这是商店文件:

这是默认状态:

更新 - 这解决了问题:

0 投票
3 回答
407 浏览

reactjs - 在 Redux 状态下更新单个值

我有一个页面,上面有几个组件,其中一个组件读取 redux 状态。当 redux 对象组件发生一些变化时,它会重新加载,显示微调器并且组件上的所有数据都会更新。但我的任务是更新 redux 对象状态中的单个值,而无需重新渲染和刷新所有内容。例如这里是 redux 对象,它包含一个包含一些数据的对象数组。我需要更新state某个对象中的一个值,比如说最后一个。但我需要这样做而不必更新所有状态。

我在 Redux 操作中有一个函数可以加载所有这些数据。

但现在我需要一个单独的函数updateData函数,它将更新现有状态对象中的一个值,而无需刷新所有内容。

在 Redux 中可以这样做吗?