Javascript ReactJS-可手持-确定更改

Javascript ReactJS-可手持-确定更改,javascript,reactjs,handsontable,Javascript,Reactjs,Handsontable,我正在尝试获取我正在使用的react handsontable组件中更改的值: <HotTable root="hot" data={this.state.handsontableData} colHeaders={this.handsontableColumns} rowHeaders={true} width="1200" he

我正在尝试获取我正在使用的
react handsontable
组件中更改的值:

<HotTable root="hot"
                data={this.state.handsontableData}
                colHeaders={this.handsontableColumns}
                rowHeaders={true}
                width="1200"
                height="300"
                stretchH="all"
                colWidths={this.handsontableColWidths}
                onAfterChange={this.handleHOTChange(changes, source)} />
有人能告诉我如何从活动中获得“变化”吗

如果我只是在没有参数的情况下使用
onAfterChange={this.handleHOTChange}
,那么
handleHOTchanges
函数将在更改时被调用。但是,我如何确定发生了什么变化?

啊,这是固定的:

以下是解决方案:

<HotTable root="hot"
                data={this.state.handsontableData}
                colHeaders={this.handsontableColumns}
                rowHeaders={true}
                width="1200"
                height="300"
                stretchH="all"
                colWidths={this.handsontableColWidths}
                onAfterChange={(changes, source) => this.handleHOTChange(changes, source)} />
啊,把这个修好了:

以下是解决方案:

<HotTable root="hot"
                data={this.state.handsontableData}
                colHeaders={this.handsontableColumns}
                rowHeaders={true}
                width="1200"
                height="300"
                stretchH="all"
                colWidths={this.handsontableColWidths}
                onAfterChange={(changes, source) => this.handleHOTChange(changes, source)} />

原因是您应该传入函数,而不是调用函数。上面的答案是有效的,但我认为不正确和多余。它正在创建一个只调用另一个函数this.handleHOTChange的函数。解释也不是这样的,因为您需要使用arrow函数语法。实际上,您可以使用其他语法,如

```


原因是您应该传入函数,而不是调用函数。上面的答案是有效的,但我认为不正确和多余。它正在创建一个只调用另一个函数this.handleHOTChange的函数。解释也不是这样的,因为您需要使用arrow函数语法。实际上,您可以使用其他语法,如

```


handleHOTChange(changes, source) {
     alert('changed!');
     console.log(changes);
   }
<HotTable root="hot"
                data={this.state.handsontableData}
                colHeaders={this.handsontableColumns}
                rowHeaders={true}
                width="1200"
                height="300"
                stretchH="all"
                colWidths={this.handsontableColWidths}
                onAfterChange={function(changes, source){
                   // do something....}
<HotTable root="hot"
            data={this.state.handsontableData}
            colHeaders={this.handsontableColumns}
            rowHeaders={true}
            width="1200"
            height="300"
            stretchH="all"
            colWidths={this.handsontableColWidths}
            onAfterChange={this.handleHOTChange} />