Angular 2 Async需要单击路由才能呈现数据

时间:2016-10-22 21:34:34

标签: angular

我在我的应用程序中遇到了一个奇怪的问题,我正在查询异步数据并且它恢复正常,但除非我再次单击该路径,否则它不会在视图中呈现。有人可以告诉我这是否可以修复或是一个错误?

这是我的代码:

constructor( private _firebase: FirebaseService ) { }   
ngOnInit() { 
    //observable
    this.ideaData = this._firebase.GetObjectAtPath('stages/' + this.stage + '/' + this.ideaId);
}

查看:

{{ (ideaData | async)?.title }}

1 个答案:

答案 0 :(得分:0)

根据代码中的注释,this.ideaData实际上会被分配一个您可以订阅的可观察对象。

ngOnInit() {
  this._firebase
    .GetObjectAtPath('stages/' + this.stage + '/' + this.ideaId)
    .subscribe(result => this.ideaData = result, err => console.log(err));
}

有关此处观察/订阅的更多信息:https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/operators/subscribe.md