有没有一种方便的方法可以保存在sessionStorage中,而不需要手动观察属性的变化和更新?
例如,我有一个带有属性“query”的 SearchComponent。
export class SearchComponent {
private query: String;
private searchResult: SearchResult;
...
每次查询或搜索结果发生变化时(还有更多属性),我都必须手动更新 sessionStorage。
sessionStorage.setItem('query', query);
像注释这样自动完成工作的东西会很棒:
export class SearchComponent {
@SessionStored
private query: String;
@SessionStored
private searchResult: SearchResult;
...
我已经找到了类似的解决方案here .但是这个不适用于 sessionStorage。
最佳答案
我刚刚尝试过,它对 LocalStorage 和 SessionStorage 都工作得很好。尝试使用以下步骤:
第一步:
npm install --save angular2-localstorage
第 2 步:
import { LocalStorageService } from 'angular2-localstorage/LocalStorageEmitter'
import { SessionStorage } from 'angular2-localstorage/WebStorage'
constructor(storageService: LocalStorageService){}
第 3 步:
@LocalStorage() public lastSearchQuery:Object = {}
或者,
@SessionStorage() public lastSearchQuery:Object = {};
如文档中所述,它很简单。
关于Angular 2 - 在 session 中存储的便捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37164758/