Javascript 角度存储检查失败

Javascript 角度存储检查失败,javascript,angular,typescript,Javascript,Angular,Typescript,我将数据存储在本地存储器中,并在我的组件中检查数据是否存在过滤表结果如果不存在,则显示所有结果 问题是这个功能有时有效,有时无效!我不确定是什么原因导致了问题,但当我硬刷新页面时,最容易失败Ctrl+F5 代码已注释 PS:tableSearch\u列和searchbar\u值永远不会同时存储在localStorage中,因为我总是在存储另一个值之前先删除一个值 所以逻辑是要么它们中的一个存在,要么它们都不存在 有什么想法吗?解决了 我已将存储检查移动到构造函数中,如下所示: construct

我将数据存储在本地存储器中,并在我的组件中检查数据是否存在过滤表结果如果不存在,则显示所有结果

问题是这个功能有时有效,有时无效!我不确定是什么原因导致了问题,但当我硬刷新页面时,最容易失败
Ctrl+F5

代码已注释 PS:
tableSearch\u列
searchbar\u值
永远不会同时存储在localStorage中,因为我总是在存储另一个值之前先删除一个值

所以逻辑是要么它们中的一个存在,要么它们都不存在

有什么想法吗?

解决了 我已将存储检查移动到
构造函数中,如下所示:

constructor(
    //....
  ) {
    //...

    const getstoredata = store.get('searchbar_values')
    if (getstoredata) {
      this.searchbar_values = true;
      this.tableSearch_column = false;
    }
    const getstoredata2 = store.get('tableSearch_column')
    if (getstoredata2) {
      this.tableSearch_column = true;
      this.searchbar_values = false;
    }
}
然后在
ngOnInit
中调用我的条件,正如您在上面的问题中看到的。现在,每次它调用localStorage并返回正确的值

constructor(
    //....
  ) {
    //...

    const getstoredata = store.get('searchbar_values')
    if (getstoredata) {
      this.searchbar_values = true;
      this.tableSearch_column = false;
    }
    const getstoredata2 = store.get('tableSearch_column')
    if (getstoredata2) {
      this.tableSearch_column = true;
      this.searchbar_values = false;
    }
}