Javascript 如何在ag网格中获取筛选行?
我有一个过滤选项Javascript 如何在ag网格中获取筛选行?,javascript,ag-grid,Javascript,Ag Grid,我有一个过滤选项 如何在ag网格中获取已筛选的行(而不是所选行?您可以使用forEachNodeAfterFilter(回调)api方法来实现此目的 查看所有可用的API调用,包括各种forEachXXX方法。这花了我很多时间,所以我在这里发布。使用onFilterChanged()。传递给onFilterChanged()的事件可以这样使用(例如在Typescript React中) onFilterChanged=ev=>{ if(ev?.api?.rowModel?.rowsToDispl
如何在ag网格中获取已筛选的行(而不是所选行?您可以使用forEachNodeAfterFilter(回调)api方法来实现此目的
查看所有可用的API调用,包括各种forEachXXX方法。这花了我很多时间,所以我在这里发布。使用
onFilterChanged()。传递给onFilterChanged()
的事件可以这样使用(例如在Typescript React中)
onFilterChanged=ev=>{
if(ev?.api?.rowModel?.rowsToDisplay){
this.setState({selectedRows:ev?.api?.rowModel?.rowsToDisplay.filter(node=>node.isSelected())});
}
};
根据@sean landsman的答案构建,下面是一个如何使用forEachNodeAfterFilter(回调)
方法的示例:
let rowData = [];
gridApi.forEachNodeAfterFilter(node => {
rowData.push(node.data);
});
没有什么办法吗?我必须使用foreach来获取这些节点?嗨,是的,恐怕你必须迭代这些节点。如果您想对过滤后的节点作为一个整体进行处理,那么您需要在迭代时建立一个集合。自4月份以来,所有内容都发生了变化?我们还需要foreach来获取更新的数据集吗?