在http调用在angulat 2中完成之前,服务返回空

时间:2017-04-08 14:25:07

标签: angular

当我打电话给我的服务时,它会返回一些像这样的东西

Observable {_isScalar: false, source: Observable, operator: MapOperator}

但我只想要我的代码中的响应数据。任何人都可以帮忙。感谢。

我的服务,

    public  getAll() {
       var headers = new Headers();
       headers.append('Content-Type','application/json')
       headers.append('Authorization',this.token);
       return this.http.get(this.config.serverUrl+'user/'+this.userJson.user.id,{headers:headers})
        .map((response: Response) => {  return response.json().results; 

       });
}

我的组件,

  constructor(private _UsersService:UsersService) { 
    this.data = _UsersService.getAll();
    console.log(this.data)

}

1 个答案:

答案 0 :(得分:3)

当你分配这样的响应时,

this.data是一个Observable,如果你想要这些值,你需要订阅:

ngOnInit() {
  this._UsersService.getAll()
    .subscribe(data => {
       this.data = data;
  })
}

请注意,我在OnInit拨打电话,我说这将是首选方式。