Element 表格设置合计列并固定底部(横向滚动轴下),设置字体颜色

在这里插入图片描述

自定义需要合计的项

element-ui 表格组件有合计行的方法,直接拿来用

属性说明类型默认值
show-summary是否在表尾显示合计行Booleanfalse
summary-method自定义的合计计算方法Function({ columns, data })
  1. 在table上设置show-summary属性
<el-table :data="value"   show-summary :summary-method="getSummaries">
          
         //代码只展示关键部分
          
 </el-table>
  1. 我只需要合计有金额的列,所以自定义了合计逻辑
      // 合计金额
      getSummaries(param) {
        const { columns, data } = param;
        const sums = []; //声明变量
        columns.forEach((column, index) => {
          if (index === 3) {
            sums[index] = "合计";
             //表格固定了前两列数据,合计放在第一列样式会错乱(暂未解决/且我的设计图就在第三列)
            return;
          }
          const values = data.map((item) => Number(item[column.property]));
          if (
            column.property == "money" || column.property == "actualMoney" || column.property == "amountReceived"
              //需要显示和合计纵列字段名,如果和我的需求一样可以直接copy代码,替换字段名即可
          ) {
            sums[index] = values.reduce((prev, curr) => {
              const value = Number(curr);
              if (!isNaN(value)) {
                return prev + curr;
              } else {
                return prev;
              }
            }, 0);
            sums[index] += '元';
          } else {
          }
        });
        return sums;
      },

固定到表格组件底部

我给表格组件高度做了自适应,经过调整后才搞成现在的效果

合计行文字设置样式

设计上要将文字颜色设置为红色、我用了row-class-name 等属性都没有实现,后来直接找到标签改掉了颜色。

  /deep/.el-table__footer-wrapper tbody td {
    color: red;
  }

戎码三年,愿回首都是眼泪

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值