Angular2 @ViewChild 不会从 ng2-charts 中获取 BaseChartDirective



我正在使用ng2-charts v1.5.0,我正在尝试在单击后使用新数据更新图表。我正在关注其他人发布的示例。

在我看来,我有:

<div style="display: block">
  <canvas #chart baseChart
              [data]="dChartData"
              [labels]="dChartLabels"
              [chartType]="dChartType"
              (chartClick)="chartClicked($event)">
  </canvas>
</div>

如果我写:

@ViewChild( BaseChartDirective ) chart: BaseChartDirective;

然后我得到:

__zone_symbol__error : Error: Can't construct a query for the property "chart" of "ChartTest1WidgetComponent" since the query selector wasn't defined.

如果我写:

@ViewChild( 'chart' ) chart: BaseChartDirective;

然后我打电话给this.chart.ngOnChanges({});,但我得到:_this.chart.ngOnChanges is not a function

这对我来说没有意义。我怎样才能得到正确的视图子项,这是对BaseChartDirective的引用?

这对

我有用: @ViewChild(BaseChartDirective) private Chart: BaseChartDirective;然后this.Chart.ngOnChanges({} as SimpleChanges).

但是,更简单的方法是使用新数据实际更新变量 dChartData,它应该会自动使用新数据更新您的图表。它比使用ngOnChanges更快。希望这有帮助!

相关内容

  • 没有找到相关文章

最新更新