首页 > 解决方案 > 如何在 redux 工具包 next js 中从 localstorage 设置初始状态

问题描述

我正在尝试在使用 redux 和 next js 的项目中实现身份验证。

我有一个userSlice初始状态的用户信息和令牌。我正在检查令牌的本地存储。但我收到一个错误:

ReferenceError: localStorage 未定义

如何在初始状态下从本地存储添加用户令牌?

const userTokenFromStorage = localStorage.getItem('userToken')
  ? localStorage.getItem('userToken')
  : null;

export const userSlice = createSlice({
  name: 'user',
  initialState: {
    user: { info: null, token: userTokenFromStorage },
  },
  reducers: {
    login: (state, action) => {
      state.user.token = action.payload;
    },
    getDetails: (state) => {
      getUserDetails(state.user.token).then((details) => {
        state.user.info = details;
      });
    },
  },
});

标签: javascriptreduxnext.js

解决方案


推荐阅读