localstorage.setitem 不适用于角度

问题描述 投票:0回答:2

下面是我的功能。我可以在 console.log 中看到一个对象,并带有

res
:

login2(){
    console.log(this.user_form_value);
    console.log(this.password_form_value);
    this._loginService.login(this.user_form_value, this.password_form_value).subscribe(
      res => console.log(res.user),
      res2 =>localStorage.setItem("getLoggedInUserANG1",JSON.stringify(res2.user))
      )

  }

但是当我尝试将相同的对象存储在本地存储中时,它没有被保存。我是角度新手,但没有错误,我不知道为什么它没有被保存。

保存后,我还想在数组变量中使用

getitem
获取相同的内容并将其保存在 console.log 中。我想了解基本问题以及我到底哪里出错了。

下面是我的console.log的截图

javascript angularjs json local-storage
2个回答
1
投票

res2
未定义。我相信您需要看一下 JavaScript Arrow Functions 文档

尝试一下:

login2() {
    console.log(this.user_form_value);
    console.log(this.password_form_value);
    this._loginService.login(this.user_form_value, this.password_form_value).subscribe(
        res => {
            console.log(res.user);
            localStorage.setItem("getLoggedInUserANG1",JSON.stringify(res.user));
        }
    )
}

0
投票

我遇到了这样的情况:当我重定向到另一个页面时,本地存储被删除了。试试这个:

setTimeout(() => {   
localStorage.setItem("getLoggedInUserANG1",JSON.stringify(res2.user));
    }, 3000)

Response.redirect 会杀死本地存储?

© www.soinside.com 2019 - 2024. All rights reserved.