初蒙数据表。计算金额并在页脚中显示
Posted
技术标签:
【中文标题】初蒙数据表。计算金额并在页脚中显示【英文标题】:Primeng datatable. Calculate amount and dispaly it in footer 【发布时间】:2017-07-01 09:14:02 【问题描述】:我在一个项目中使用primeng 数据表。 我试图在行分组数据表的页脚中获取总和。在数据编辑和输入新数据期间必须进行求和。
以下函数计算总和:
sumNum1: number;
calculateGroupTotal1(sectionId: number)
this.sumNum1 = this.model.Register10Data.map(c => c.SectionId === 1 ? c.Num1 : 0)
.reduce((sum, current) => +sum + current);
console.log(this.sumNum1);
return this.sumNum1;
SectionId 是分组数据的值。
在页脚中我调用了这个函数。我从这里的第一个例子中做到了 - http://www.primefaces.org/primeng/#/datatable/rowgroup
<template pTemplate="rowgroupfooter" let-rowData>
<td style="text-align:left">Sum</td>
<td style="text-align:center">X</td>
<td style="text-align:center">X</td>
<td>calculateGroupTotal1(rowData['SectionId'])</td>
<td></td>
<td></td>
<td></td>
</template>
为什么在汇总字段中我得到字符串的串联而不得到金额? 也许有人做过这样的事情?这个任务很琐碎,但我不知道如何使用这个控件。
【问题讨论】:
【参考方案1】:我猜问题是您使用的值是字符串。您需要将值转换为数字才能执行计算。
您可以使用let numericalSum = Number(sum);
或let numericalSum = +sum;
,如this answer 中所述。
【讨论】:
查看变化。控制台还返回串联而不是求和。 我认为你需要它是(+sum) + (+current)
太棒了!如果你能接受这个答案,那就太好了。问候以上是关于初蒙数据表。计算金额并在页脚中显示的主要内容,如果未能解决你的问题,请参考以下文章
在页脚中使用过滤器进行列搜索 - 页脚过滤器未显示 - Laravel Datatables Yajrabox