AG Grid是一个用于构建功能丰富的数据表格的JavaScript库。要在AG Grid中显示百分比行总计以及行总计,可以使用AG Grid提供的自定义聚合函数来实现。
下面是一个示例代码,演示了如何在AG Grid中显示百分比行总计和行总计:
// 创建表格
var gridOptions = {
  columnDefs: [
    { headerName: '名称', field: 'name', rowGroup: true },
    { headerName: '值', field: 'value', aggFunc: 'sum' },
    { headerName: '百分比', valueGetter: 'data.value / api.getDisplayedRowCount() * 100', aggFunc: 'avg', valueFormatter: function(params) { return params.value.toFixed(2) + '%'; } }
  ],
  autoGroupColumnDef: {
    headerName: '总计',
    cellRenderer: 'agGroupCellRenderer',
    cellRendererParams: {
      footerValueGetter: 'data.childrenMapped[\'value\'].value',
      cellRenderer: 'agAnimateShowChangeCellRenderer',
      cellRendererParams: {
        initialValue: '0',
        suppressFlash: false
      }
    }
  },
  animateRows: true,
  defaultColDef: {
    flex: 1,
    minWidth: 150,
    sortable: true,
  }
};
// 添加数据
var rowData = [
  { name: 'A', value: 10 },
  { name: 'B', value: 20 },
  { name: 'C', value: 30 },
];
// 初始化表格
var gridDiv = document.querySelector('#gridContainer');
new agGrid.Grid(gridDiv, gridOptions);
gridOptions.api.setRowData(rowData);
在上述代码中,我们使用columnDefs定义了表格的列配置。其中,headerName表示列的标题,field表示列绑定的数据字段,aggFunc指定了使用的聚合函数。valueGetter定义了计算百分比的数值获取器,valueFormatter设置了百分比的显示格式。
autoGroupColumnDef用于定义行总计的列配置。headerName设置了总计列的标题,cellRenderer指定了使用的单元格渲染器,cellRendererParams设置了渲染器的参数,footerValueGetter定义了总计列的数值获取器。
最后,我们使用setRowData方法将数据添加到表格中。
以上就是在AG Grid中显示百分比行总计和行总计的解决方法。您可以根据自己的需求进行修改和调整。