我在redux工具包切片中使用了localStorage.setItem(),它可以正常工作,但是当我想在侧边的redux工具包切片中使用localStorage.getItem()时,它就不工作了,它说本地存储没有定义
import { createSlice } from "@reduxjs/toolkit";
const users=localStorage.getItem('users')!==null ?JSON.parse(localStorage.getItem("users")):[];
const initialState = { value: users };
const Users = createSlice({
name: "users",
initialState,
reducers: {
addUser: (state, action) => {
state.value.push(action.payload);
localStorage.setItem("users",JSON.stringify(state.value.map(item=>item)))
},},});
export const { addUser} = Users.actions;
export default Users.reducer;
字符串
但上面写着
1条答案
按热度按时间okxuctiv1#
首先,尝试使用redux-persist,它是
localstorage
的redux抽象。如果由于任何原因你不能使用它,请在使用localsotarge
之前检查窗口是否已定义。字符串