element-ui Table表格合计列 保留两位小数

30 篇文章 2 订阅
// 使用summary-method  自定义的合计逻辑。主要是为了显示订单合计金额,并过滤不需要合计的列
    getSummaries(param) {
      const { columns, data } = param
      const sums = []
      columns.forEach((column, index) => {
        // 第一列 显示文字 小计
        if (index === 0) {
          sums[index] = '小计'
          return
        }
        if (index === 2) { // 只针对第3列进行合计
          const values = data.map(item => Number(item[column.property]))
          if (!values.every(value => isNaN(value))) {
            sums[index] = values.reduce((prev, curr) => {
              const value = Number(curr)
              if (!isNaN(value)) {
                return prev + curr
              } else {
                return prev
              }
            }, 0)
            sums[index] = sums[index].toFixed(2) // 保留2位小数,解决小数合计列
          } else {
            sums[index] = '/' // 其余列一律不进行合计
          }
        }
      })
      return sums;
    }

若需要保留整数,也可以使用 Math.round(x) 方法,可把一个数字舍入为最接近的整数:

sums[index] = Math.round(sums[index]*100)/100;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值