ag-grid提供了一种使用api.getSelectedRows()
函数获取选定行的方法。并提供一种使用api.setRowData([])
功能设置所有行的方法。我正在寻找某种东西getAllRows()
来返回网格中的所有行。我知道有一种方法可以使用api.forEachNode()
etc 遍历所有行。有什么办法可以获取整个行数组?
Ala*_*hel 14
你正在寻找getRenderedNodes
gridOptions.api.getRenderedNodes()
Run Code Online (Sandbox Code Playgroud)
注意:这只会检索呈现的行。如果您使用行虚拟化,这意味着只有视口中的行才会出现在 DOM 中,并且只会返回这些行。根据函数文档:
检索渲染的节点。由于虚拟化,这将仅包含当前可见的行和缓冲区中的行。
我认为没有这种方法,但是您可以自己制作:
getAllRows() {
let rowData = [];
this.gridApi.forEachNode(node => rowData.push(node.data));
return rowData;
}
Run Code Online (Sandbox Code Playgroud)
Ag-grid 不提供任何方法来做到这一点。您可以在此处查看访问数据 Ag-grid和在此处查看Grid Api。
我说原因是因为你可以通过循环来完成,正如你之前提到的。
let items: Array<rows> = [];
this.gridApi.forEachNode(function(node) {
items.push(node.data);
});
Run Code Online (Sandbox Code Playgroud)
或者,如果您的 ag-grid 的源是通过 angular 链接的,则无需在网格上循环(假设数据网格没有挂起的更改)
归档时间: |
|
查看次数: |
9653 次 |
最近记录: |