我只是将商店中的一些内容导出到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方法访问令牌。
答案 0 :(得分:0)
执行此操作的一种简单方法是使用redux-persist,它将Redux状态持久保存到本地存储中。还可以选择将特定的减速器列入黑名单或白名单。通过使用此软件包,我们不必在Redux存储更新时手动处理本地存储