在angular 2中跨应用程序访问会话存储

在angular 2中跨应用程序访问会话存储,angular,typescript,Angular,Typescript,我有一个会话变量作为JSON值。我的home.component.ts中有这个变量,需要在多个地方访问这个变量 我的代码: .do(data => sessionStorage.setItem('homes', JSON.stringify(data))) var session = sessionStorage.getItem('homes'); 如何在整个应用程序中访问会话变量。定义服务并将其注入您的组件中。 在此内部,定义会话存储的getter和setter并对其进行管理 例如:

我有一个会话变量作为JSON值。我的
home.component.ts中有这个变量,需要在多个地方访问这个变量

我的代码:

.do(data => sessionStorage.setItem('homes', JSON.stringify(data)))
var session = sessionStorage.getItem('homes'); 

如何在整个应用程序中访问
会话
变量。

定义服务并将其注入您的组件中。 在此内部,定义会话存储的getter和setter并对其进行管理

例如:

import { Injectable } from '@angular/core';

@Injectable()
export class HomeService {

  constructor() { }

  public setItem(data: any){
    sessionStorage.setItem('homes', JSON.stringify(data));
  }

  public getItem(){
   return JSON.parse(sessionStorage.getItem('homes'));
  }
}
然后在yout home.component.ts中

constructor(private homeService: HomeService){}

ngInit(){
this.homeService.setItem(data...); //pseudocode
}

而且,当您想要检索数据时,只需调用homeService.getItem()。

我是angular2的新手,请帮助处理samplesDone,这有点伪代码,但这是我在上一个项目中实现的方式