首页 文章

访问localStorage而不是redux-store的简单方法

提问于
浏览
0

我刚从我的商店向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-method访问令牌 .

1 回答

  • 0

    执行此操作的一种简单方法是使用redux-persist,它将redux状态持久保存到本地存储 . 此外,还可以选择将特定减速器列入黑名单或白名单 . 通过使用此包,我们不必在redux存储更新时手动处理本地存储

相关问题