【问题标题】:Angular on refresh getItem undefined for Local storage serviceAngular on refresh getItem undefined for Local storage service
【发布时间】:2020-12-15 08:07:09
【问题描述】:

我正在尝试在 localStorage 中保存一个值并在刷新时检索它。 我创建了一个本地存储服务,并通过调用该服务设置了一个本地存储值。

刷新时我想检索该值,因此我的 appComponent ngOnInit.. 中有以下内容。

ngOnInit() {
// Service which returns undefined
console.log(this.ls.getLocalStorage('test'))

// local which returns value...
console.log(localStorage.getItem('test'));

}

在我的本地存储服务中,我有以下内容。

getLocalStorage(k) {
    console.log(k);
    localStorage.getItem(k);
}

我的 onInit 中的第一个返回 undefined,而第二个返回正确的值。

为什么会发生这种情况,有办法解决吗?

谢谢

【问题讨论】:

    标签: angular typescript local-storage


    【解决方案1】:

    我认为你错过了 return 声明

    您的方法必须如下所示:

    getLocalStorage(k) {
        return localStorage.getItem(k);
    }
    

    【讨论】:

      【解决方案2】:

      您没有在函数中返回任何值。请添加return 关键字。

      getLocalStorage(k) {
          console.log(k);
          return localStorage.getItem(k);
      }
      

      【讨论】:

      • 正确。我从我的 appComponent 中复制了 getItem 并完全忘记了返回。非常感谢!
      猜你喜欢
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 2019-10-30
      • 1970-01-01
      • 1970-01-01
      • 2020-02-11
      • 2022-12-27
      • 2015-07-26
      相关资源
      最近更新 更多