使用 angular2 可观察对象异步填充对象 属性?

Populating Object property asyncronously with angular2 observables?

我正在尝试将 angular2 组件转换为使用异步数据调用。我使用专用图表库将数据显示为图表。图表需要以某种格式传递数据(如下所示)。

public barChartData: any[] = [
    { data: this.dataService.getCellOEE('powders'), 
      label: 'OEE' }
];

问题是 this.dataService.getCellOEE('powders') returns 一个可观察的。如果我像 [datasets]="(barChartData | async)" 那样绑定到图表对象,则会抛出错误,因为显然 barChartData 是一个对象而不是可观察对象。

如何使用已解析的 Observable 数据异步填充静态对象的一部分,然后将该静态对象绑定到图表 UI 组件的 datasets 属性?

我想你需要这样的东西:

public barChartData: any[] = [
    { data: null, 
      label: 'OEE' }
];
this.dataService.getCellOEE('powders').subscribe(value => barChartData[0].data = value);