Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript react js localstorage值对象_Javascript_Reactjs_Local Storage - Fatal编程技术网

Javascript react js localstorage值对象

Javascript react js localstorage值对象,javascript,reactjs,local-storage,Javascript,Reactjs,Local Storage,我将从后端获得的内容保存到本地存储:+ async onSubmit(e){ e.preventDefault(); const {login, password } = this.state; const response = await api.post('/login', { login,password }); const user = response.data.user; const {jwt}

我将从后端获得的内容保存到本地存储:+

   async onSubmit(e){
        e.preventDefault();
        const {login, password } = this.state;

        const response = await api.post('/login', { login,password });
        const user = response.data.user;
        const {jwt} = response.data;
        console.log(user);
        localStorage.setItem('token', jwt);
        localStorage.setItem('user', user);
        this.props.history.push("/home");
    }
我的

const user=response.data.user

退回这个:

{id: 2, name: "spt", email: "email", login: "spt", password: "$2a$10$Rqc1VU1TfKD6MypNzbgemeR0O4YeXIFy1XiURjNeHk0gpWJitp4da", …}
两个物体
[对象对象]

localstorage
不支持对象。如果要将用户存储在
localstorage
,则需要将其字符串化:
JSON.stringify(user)


如果要存储对象,可以使用第三方NPM模块,如(并非所有浏览器都支持)。

本地存储是键值存储,其中键是字符串,值也是字符串

你必须对你的数据进行字符串化,你可以做到这一点

localStorage.setItem('user', JSON.stringify(user));
就像

const user = JSON.parse(localStorage.getItem('user'));

你能澄清一下你的问题是什么吗?你好,我照你说的做了,通过套接字与我的后端联系,我发送了constplayer=JSON.parse(localStorage.getItem('user'));this.socket.emit('addPlayer-Queue',player);但是我的后端没有收到这个值,如果我将该值更改为1,例如我的后端gets@Felipesocket也接受字符串,在使用socket发送之前不应该执行JSON.parse。出于某种原因,我没有在后端获取此值。我需要这样做:const player=localStorage.getItem('user')?