reactjs - material-table:如何制作汇总行?

标签 reactjs material-table

summary row

如何使用 Material 表制作这样的汇总行? 请帮助我,谢谢。

最佳答案

如果“摘要行”指的是表格标题,那是您只需添加到 <MaterialTable /> 的 Prop “标题”组件。

但是,我怀疑您需要带有 Total 的行结果,我在 examples 中找不到, 任何一个。 这是一个自定义函数,您可以使用它自己计算总数,将其添加到您的数据集中并获得类似的结果:

const addTotal = (data, byColumn) => {
  let keys = Object.keys(data[0]);
  let total = data.reduce((acc, el) => {
    return acc += +(el[byColumn]);
  }, 0);

  let totalRow = {};
  let emptyRow = {};
  for (let key of keys) {
    if (key === keys[0]) {
      totalRow[key] = 'Total';
    } else if (key === byColumn) {
      totalRow[key] = total;
    } else {
      totalRow[key] = '';
    }
    emptyRow[key] = '';
  }
  return [...data, emptyRow, totalRow];
}

这将添加一个空行和一个总计,您输入的参数为 byColumn .您需要小心求和的值(即添加类型检查或使用 hasOwnProperty 验证列名)。

关于reactjs - material-table:如何制作汇总行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59191108/

相关文章:

reactjs - 如何从 Material 表中删除覆盖装载机?

javascript - Material 表可编辑 : Making all rows editable at once

reactjs - 有没有办法可以在 Material 表中创建具有自动编号的自定义列?

javascript - Rawdata.some没有定义ant设计表错误

javascript - 无法从 React Native 中的不同文件夹导入图像

reactjs - 在react中将数据从子级传递到父级并且未定义不是一个函数

reactjs - 如何使用 useQuery Hook 来填充其他 Hook 中的状态?

javascript - React 中 HTML 元素的条件渲染?

javascript - 通过 React 路由器将 prop 传递给组件

reactjs - 如何调整 Material 表的宽度?