首页 > 解决方案 > chart.js onClick事件函数,访问angular组件

问题描述

如何component在 ChartJs 函数的 onClick 函数上获取角度?有办法吗?就像this图表一样,self窗口...

在此处输入图像描述

我的图表是这样添加到some.component.ts

 @ViewChild(Chart) mainChart: Chart // declaration on public variables on component.ts

  // construction of chart on API call result
  this.mainChart = new Chart(MeasureUnitMonthlyComponent.CHART_ID, {
    type: 'bar',
    data: {
      labels: aChartLabelsArray,
      datasets: aDatasetsArray
    },
    options: {
      onClick: this.onChartClicked,
      legend: {
        display: true
      },
    ....

标签: javascriptangularchart.js

解决方案


如果您编写 ,onClick: () => {}this是编写箭头函数时的组件/类。

如果你写,onClick: function() {}this将是图表对象。

如果您想同时访问图表对象和组件/类,我将使用thisAsThat下面链接的实用程序并进行解释。

TypeScript:如何同时使用胖箭头和这个?

因为onClick:您可以使用thisAsThat答案中存在的实用程序,其中this类/组件that将成为图表对象。

我还会考虑使用which 是它有事件ng2-charts的包装器。chart.js(chartClicked)

Chart.js & Angular 2 - ng2-charts 自定义点击事件


推荐阅读