我正在摸不着为这段代码做准备:
<ngx-charts-bar-vertical-stacked *ngIf="datas" #charts [scheme]="colorScheme" [results]="datas" [gradient]="gradient" [xAxis]="showXAxis"
[yAxis]="showYAxis" [legend]="showLegend" [showXAxisLabel]="showXAxisLabel" [showYAxisLabel]="showYAxisLabel" [xAxisLabel]="xAxisLabel"
[yAxisLabel]="yAxisLabel" (select)="onSelect($event)">
</ngx-charts-bar-vertical-stacked>
问题是数据是异步的。因此需要* ngIf指令来等待数据填充。 * ngIf从DOM中删除组件,因此select事件永远不会触发。
数据加载到ngOninit()钩子中。
ngOnInit() {
this.loadHisto();
}
/**
* Load histogram with filter.
*/
loadHisto() {
const params = []
params['search'] = [];
params['search']['minDate'] = this.minDate;
params['search']['maxDate'] = this.maxDate;
params['search']['interval'] = this.interval;
this.histoSubscription.add(this.elkService.findHisto(params).subscribe(datas => {
this.datas = datas;
}));
}
任何解决方案?我已经尝试过在内部找到的所有解决方案,但没有任何作用
答案 0 :(得分:0)
只需要像这样设置一个初始值:
datas = [];