2017-06-25 44 views
0

MyHighChartComponent.ts如何調用打字稿功能高圖表點擊事件中

export class MyHighChartComponent { 
    highchartsConfiguration: any = { 
     chart: { 
      events: { 
       click(e) { 
        if (!($(event.target)[0].textContent)) { 
         console.log('clicked'); //this is printing 
         this.drillDown(); // how to call typescript function here? 
        } 
       }, 
      }, 
     } 
    }; 

    drillDown() { 
     console.log('drill down method called'); 
    } 
} 

如何從高圖表click事件調用一個函數打字稿?

我得到以下錯誤

錯誤堆棧:類型錯誤:this.drillDownis不是一個函數

+0

首先確保代碼是有效的JS/TS :) – toskv

+0

@toskv它是有效的,但我還沒有張貼的全部代碼,因爲它不是必需的。只是想知道如何調用drillDown方法 –

+0

您發佈的代碼是無效的JavaScript代碼..點擊(e){}是無效的js ..你所缺少的是使用箭頭函數爲點擊處理程序就這樣。 – toskv

回答

1

您必須使用箭頭功能保留在單擊處理相同的情況下(這一點)。

它應該是這樣的:

export class MyHighChartComponent { 
    highchartsConfiguration: any = { 
     chart: { 
      events: { 
       click : (e) => { 
        if (!($(event.target)[0].textContent)) { 
         console.log('clicked'); //this is printing 
         this.drillDown(); // how to call typescript function here? 
        } 
       }, 
      }, 
     } 
    }; 

    drillDown() { 
     console.log('drill down method called'); 
    } 
} 
+0

非常感謝。它的工作 –