我们有一个位置树,其中每个位置(父/子)都包含该特定节点的一些数据,请参阅屏幕截图。我们需要在顶部/底部显示整棵树的总数。注意:不希望子节点的数据总和在父节点中,父节点只需要显示父节点的数据。
我尝试使用行固定,如果我需要汇总前端所有列的所有数据,并且当 Aggrid 的所有数据出现时我需要从后端获取总计数据,这似乎是一个成本高昂的操作增加服务器响应时间(后端计算总数很耗时)
有没有办法通过数据透视或任何其他功能来操作前端的数据。
P.S:我也尝试过使用枢轴以及页脚。子节点的所有数据在父节点上求和,它不考虑父数据。尝试自定义枢轴的 aggFunc: sum 方法,我能够在父节点添加父数据和子数据,页脚中的总计结果正确为嗯
但这并没有解决我的问题,因为我只需要每个节点上各自节点的数据(而不是子节点的总数据)和总数。
需要这个
(使用 vue JS) 您可以在底部使用“pinnedBottomRowData”
// add in data ()
this.yourColumn_sum = 0;
// Add pinnedBottomRowData IN gridOptions
this.gridOptions = {
pinnedBottomRowData: [
{
yourColumn: 0,
}
],
};
}
// Calculate SUM
list = this.gridApi.getRenderedNodes().map((row) => row.data.yourColumn);
list.forEach(value=> {
this.yourColumn_sum += parseFloat(value);
});
}
// set the PinnedBottomRowData
this.gridApi.setPinnedBottomRowData(
[
{
yourColumn: parseFloat(this.yourColumn_sum).toFixed(2)
}]