如何批量选择ag-Grid中的行

时间:2018-11-17 01:45:58

标签: ag-grid ag-grid-react

有没有一种方法可以批量选择ag-Grid中的行?

特别是,当我第一次将数据加载到网格中时,我还从服务器获得了应首先选择的行列表。现在,我知道选择它们的唯一方法是:

this.state.gridApi.forEachNode((node) => {
  if (isInitiallySelected(node.data) {
    node.setSelected(true);
  }
});

但是,这会为每次迭代触发一个oneSelectionChange事件。这会在我的UI中引起一些问题,因为在选择/取消选择行时会显示反馈(敬酒)。

有没有一种方法可以在初始负载下告诉网格应该选择哪些行?

如果没有,是否可以通过API批量选择行?

如果没有,是否有办法在进行onSelectionChange调用时有条件地使node.setSelected()事件静音?

1 个答案:

答案 0 :(得分:0)

ag-grid不提供可选的事件发射。 但是您可以创建一个hack进行内部处理

private initSelectionDone:boolean;

this.initSelectionDone = false;
this.state.gridApi.forEachNode((node) => {
  if (isInitiallySelected(node.data) {
    node.setSelected(true);
  }
});
this.initSelectionDone = true;

onSelectionChange(...){
    if(this.initSelectionDone){
        ...your logic here...
    }
}