即使在 angular 5 中重新加载页面后,如何在本地将值存储到变量

How to store a value locally to a variable even after the page reloads in angular 5

我在我的 angular 5 应用程序中使用了 WebStorageServie 来存储一个选择一次并且整个应用程序都可以访问的值。它工作正常,但是当页面重新加载时,存储在变量中的数据也会被刷新。以下代码显示了我是如何实现“WebStorageService”的:

constructor(
    private _http: HttpClient,
    @Inject(LOCAL_STORAGE) private storage: WebStorageService
  ) {
    this.setHeaders();
  }

  setHeaders() {
    this.headers =  new HttpHeaders().set('Content-Type', 'application/json');
  }
  /*JIF*/

  setJIF(key1, jifId, key2,  PoID) { // Setting Global Var
            this.storage.set(key1, jifId);
      this.jifId = this.storage.get(key1);
      this.setPO(key2 , PoID);

  }

  setPO(key2, PoID) {
    this.storage.set(key2, PoID);
    this.poId = this.storage.get(key2);
     console.log('POID', this.poId); // Gives Desired Output
    console.log('JIFID', this.jifId);//Gives Desired Output
  }
}

我希望 this.jifIdthis.poId 保留其值,直到用户另有决定。我现在这样做的方式是,当页面重新加载时它会被清空。

使用本地存储

首先设置项目的东西(比如如果你想设置loggedInfo)

let loggedInfo = {'poId':3,'poId':11}
localStorage.setItem('loggedInfo',JSON.stringify(loggedInfo));
//Convert Object to String

现在通过 getItem

获取您的对象
let loggedData = JSON.parse(localStorage.getItem('loggedInfo'));
//Convert String to Object and Local Storage data

现在使用本地存储数据以供进一步使用……:)