Javascript 如何将数据包装成角度2中的可观测数据?

Javascript 如何将数据包装成角度2中的可观测数据?,javascript,angular,typescript,Javascript,Angular,Typescript,我有一个用户服务,它从localStorage返回登录用户的电子邮件地址。我需要创建一个函数,将该电子邮件地址作为可观察的数据传递,并监听app.component中的更改,以便在app.component.html的顶部菜单中显示登录用户的电子邮件地址 我有这样一个函数,用于从localhost返回常规数据: getUser(){ this.userEmail = JSON.parse(localStorage.getItem("user")).name; } 只需使用: 只需

我有一个用户服务,它从
localStorage
返回登录用户的电子邮件地址。我需要创建一个函数,将该电子邮件地址作为可观察的数据传递,并监听
app.component
中的更改,以便在
app.component.html
的顶部菜单中显示登录用户的电子邮件地址

我有这样一个函数,用于从
localhost
返回常规数据:

getUser(){    
   this.userEmail = JSON.parse(localStorage.getItem("user")).name;
}
只需使用:

只需使用:

请尝试以下操作:

  import {Observable} from "rxjs/Rx";

  getUser = () : Observable<any> =>{
    return Observable.create((obs: any) => {
       obs.next(JSON.parse(localStorage.getItem("user")).name);
       obs.complete();
    });
  } 
从“rxjs/Rx”导入{Observable};
getUser=():可观察=>{
返回可观察的。创建((obs:any)=>{
下一步(JSON.parse(localStorage.getItem(“user”)).name);
obs.complete();
});
} 
尝试以下操作:

  import {Observable} from "rxjs/Rx";

  getUser = () : Observable<any> =>{
    return Observable.create((obs: any) => {
       obs.next(JSON.parse(localStorage.getItem("user")).name);
       obs.complete();
    });
  } 
从“rxjs/Rx”导入{Observable};
getUser=():可观察=>{
返回可观察的。创建((obs:any)=>{
下一步(JSON.parse(localStorage.getItem(“user”)).name);
obs.complete();
});
} 

不清楚您想要什么,但如果您只是想用observable包装电子邮件,请执行以下操作
observable.of(JSON.parse(localStorage.getItem(“user”)).name)
我想在app.component中接收用户名,比如ngOnInit(){this.authService.getUser().subscribe(data=>{this.userEmail=data;}}}查看我的答案,然后我有一个错误“类型void上不存在属性subscribe;您是否尝试过我在示例中发布的代码?如果是,则创建一个plunker,其中显示最小设置。不清楚您想要什么,但如果您只是想将电子邮件包装为observable,请执行以下操作:
observable.of(JSON.parse(localStorage.getItem(“user”).name)
我想在app.component中接收用户名,如ngOnInit(){this.authService.getUser().subscribe(data=>{this.userEmail=data;});}查看我的答案,然后我有一个错误'property subscribe在类型void上不存在;您是否尝试了我在示例中发布的代码?如果是,请创建一个plunker,在其中显示最小设置