反应功能之间的差异

Pra*_*rav 0 javascript reactjs

我不明白为什么某些功能需要“ =()=>”,而其他功能(例如“ onFirstDateRendered”)却没有“ =()=>”,这两个功能在基于类的构造中有什么区别?谢谢

onGridReady = (params) => {
    this.gridApi = params.api
    this.columnApi = params.columnApi
    this.gridApi.sizeColumnsToFit()
}

onFirstDataRendered(params) {
    params.api.sizeColumnsToFit()
}  
Run Code Online (Sandbox Code Playgroud)

T.J*_*der 6

我猜这些都在class构造中。第一个是使用箭头函数的属性声明。第二个是方法定义。

有时人们使用带有箭头功能的属性形式,以便无论调用该函数的方式如何,this在调用过程中都会是创建该属性的类的实例。这些通常是事件处理程序。相反,在方法定义中,this方法调用期间的值取决于方法的调用方式。