该问题可能是在更新数据时,autoGroupColumnDef在树结构中的位置发生错误导致的。可以通过在更新数据时重新设置autoGroupColumDef来解决该问题。
以下是代码示例:
// 定义autoGroupColumnDef
const autoGroupColumnDef = {
headerName: "Group",
cellRendererParams: {
suppressCount: true
}
};
// 初始化表格
const gridOptions = {
columnDefs: [
{ field: "id", hide: true },
{ field: "name" },
{ field: "group" }
],
autoGroupColumnDef: autoGroupColumnDef,
groupUseEntireRow: false,
animateRows: true,
enableSorting: true,
enableFilter: true
};
// 更新数据
gridOptions.api.setRowData(data);
// 重新设置autoGroupColumnDef
const newAutoGroupColumnDef = {
...autoGroupColumnDef,
cellRendererParams: {
...autoGroupColumnDef.cellRendererParams,
getNodeChildDetails: (node) => {
if (node.children.length) {
return {
group: true,
expanded: false,
children: node.children,
};
} else {
return null;
}
}
}
};
gridOptions.api.setColumnDefs([
{ field: "id", hide: true },
{ field: "name" },
{ field: "group", autoGroupColumnDef: newAutoGroupColumnDef }
]);
gridOptions.api.refreshCells();