react ag网格中的行删除后如何刷新网格

Posted

技术标签:

【中文标题】react ag网格中的行删除后如何刷新网格【英文标题】:How to refresh grid after row delete in react ag grid 【发布时间】:2019-01-09 10:03:39 【问题描述】:

我正在研究反应 ag 网格,我正在使用 ag 网格的无限滚动功能。 我想要可以删除行并且网格将立即刷新其数据的功能。 但“删除行”功能不可用于无限滚动。

https://www.ag-grid.com/javascript-grid-infinite-scrolling/#api-inserting-removing-rows

任何人都可以建议我实现这一目标吗?

谢谢

【问题讨论】:

【参考方案1】:

如果你向下滚动一点,那里会有提示:

直接在网格中添加/删除行以进行无限滚动是 不推荐,因为它会使您的应用程序复杂化。它会让 如果您更新服务器上的数据并刷新 块缓存。

然后向下滚动到“插入和删除示例”,有示例代码显示如何删除行(使用模拟数据源):

function removeItem(start, limit) 
    // here you would make a call to your data source to remove the rows
    allOfTheData.splice(start, limit);
    // get fresh data from the source
    gridOptions.api.refreshInfiniteCache();

【讨论】:

如果您不使用无限滚动,请参阅:ag-grid.com/javascript-grid-data-update/#transactions。有几种不同的选择,最简单的可能是:var selectedData = this.gridApi.getSelectedRows(); var res = this.gridApi.updateRowData( remove: selectedData );。有一个演示展示了这一点。【参考方案2】:

您可以使用以下网格 api this.gridApi.setRowData(this.rowData);

如果是从服务器端获取数据,则先获取数据,然后调用setRowData()方法。

【讨论】:

只有在使用内存行模型时才建议这样做 在设置之前,您可以调用服务器来获取数据,一旦 rowData 可用,您就可以调用 his.gridApi.setRowData(this.rowData);功能。

以上是关于react ag网格中的行删除后如何刷新网格的主要内容,如果未能解决你的问题,请参考以下文章

如何在 AG Grid Vue 中刷新固定的行数据

React.js:如何从 ag 网格中删除行?

如何在反应中实现 AG 网格行内的按钮

如何在行删除后升级/刷新 ag-grid?

如何在 Angular 项目中自动刷新 ag-grid 中的单元格

AG 网格:禁用编辑行,除非保存已编辑的行