javascript - 访问 localStorage 而不是 redux-store 的简单方法
问题描述
我刚刚将一些东西从我的商店导出到 localStorage(实际登录用户),因此用户应该能够打开第二个选项卡而无需再次登录。
为了将数据放入 localStorage,我使用了 Redux-Middleware(如果操作是登录,我将登录数据放入 localStorage)。
export const storageMiddleware = () => next => action => {
console.log("Share Middleware...");
console.log(action);
switch(action.type){
case 'LOGIN':
localStorage.setItem('login-token', action.token);
localStorage.setItem('login-token-expiration', action.expiration);
break;
default:
break;
}
next(action);
};
现在我的问题是:有没有一种简单的方法可以从 localStorage 获取数据?就像我调用 localStorage.getItem 而不是从 redux 存储返回值的读取中间件?
或者我是否必须更改使用登录数据访问 localStorage 而不是 redux 存储的每个组件。
现在我通过 mapStateToProps 方法访问令牌。
解决方案
一种简单的方法是使用redux-persist,它将 redux 状态持久化到本地存储。还可以选择将特定减速器列入黑名单或白名单。通过使用这个包,我们不必在 redux 存储更新时手动处理本地存储
推荐阅读
- r - 如何使用 VIP 包和 tidymodels(包括配方)计算 FIRM 重要性度量
- memory - 为什么“按引用捕获”等同于 Rust 中的“按值捕获引用”?
- nuget - Azure pipeline and DotNet core project: Unable to load the service index for source api.nuget.org
- javascript - removeEventListener not working on custom directive
- architecture - What is the main idea of microservices?
- unity3d-unet - Why does the order in the upsampling path of the U-Net developed by Monai deviate from standard u-net?
- ruby - Sorbet cannot resolve constant even though it is defined
- python-3.x - I was using the pandas module(Just starting with python) and when I was running the code It is showing runtime error. What should I do
- arrays - How to merge two array of objects based on a key in Dart/Flutter
- java - 从相机意图图像捕获图像在某些设备Android中旋转