无法在 React AG Grid 中选择要删除的行

kai*_*dez 5 ag-grid ag-grid-react

在 React 中,基于文档 [here][1],我试图选择一个 AG Grid 行以使用以下代码删除:

    class MyComponent extends Component {
      constructor(props) {
        this.state={rowSelection: 'single'}
      }

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

      onRemoveSelected() {
        const selectedData = this.gridApi.getSelectedRows();
        const res = this.gridApi.updateRowData({ remove: selectedData })
      }
    }

    render() {
      return(
        <div>
          <button onClick={this.onRemoveSelected.bind(this)}>Remove Selected</button>
          <AgGridReact
            id="myGrid"
            {...gridOptions}
            onGridReady={this.onGridReady}
            rowSelection={this.state.rowSelection}
           />
          </div>
      )
    }
Run Code Online (Sandbox Code Playgroud)

但该行没有选择。此外,使用不同的代码变体,有时我会收到此控制台警告:

cannot select node until id for node is known 
Run Code Online (Sandbox Code Playgroud)

提前致谢 [1]:https : //www.ag-grid.com/javascript-grid-data-update/

小智 2

尝试循环遍历节点并为每个节点添加一个 id。我不认为这是最佳解决方案,但它确实有效。

onGridReady(params) {
    this.gridApi = params.api;
    this.gridColumnApi = params.columnApi;

    let idSequence = 0;
    this.gridApi.forEachNode( function(rowNode, index) {
      rowNode.id = idSequence++;
    });
  }
Run Code Online (Sandbox Code Playgroud)