Javascript 在设置对象中将角度分量函数用作回调函数

Javascript 在设置对象中将角度分量函数用作回调函数,javascript,angular,typescript,callback,Javascript,Angular,Typescript,Callback,这个问题可能很简单,但我还是很难回答 我有一个chartjsoptions对象。其中有一个回调函数 我需要在该函数中使用某个组件的变量(this.period) 这样的事情可能吗 组件代码: @Input() period: string; public lineChartOptions: any = { responsive: true, // maintainAspectRatio: false scales: { xAxes: [{

这个问题可能很简单,但我还是很难回答

我有一个
chartjs
options对象。其中有一个回调函数

我需要在该函数中使用某个组件的变量(
this.period

这样的事情可能吗

组件代码:

 @Input() period: string;

 public lineChartOptions: any = {
    responsive: true,
    // maintainAspectRatio: false
    scales: {
      xAxes: [{
        ticks: {
          max: 10,
          callback: (function(value, index, values) {
            this.wrapperXAxisCallback(value, index, values)
          })
        }
      }],
    }
  };

  wrapperXAxisCallback(value, index, values) {
    switch (this.period) {
      case '24hr':
        ..... break;
      case 'week':
        ..... break;
    }
  }

试试这个

public lineChartOptions: any = {
    responsive: true,
    // maintainAspectRatio: false
    scales: {
      xAxes: [{
        ticks: {
          max: 10,
          callback: ((value, index, values)=>{
            this.wrapperXAxisCallback(value, index, values)
          })
        }
      }],
    }

您希望使用箭头函数,以便可以将组件
(this)
访问到回调函数中

public lineChartOptions: any = {
responsive: true,
// maintainAspectRatio: false
scales: {
  xAxes: [{
    ticks: {
      max: 10,
      callback: ((value, index, values) => {
        this.wrapperXAxisCallback(value, index, values)
      })
    }
  }]
}
  };
请检查此处的完整参考:


尝试切换到箭头功能可能与@user1935987重复,后者说开发必须很困难?:D无论如何,如果它解决了你的问题,接受一个答案,或者是我的答案,或者是切拉潘的答案,就像我们说的一样:)