在Angular材料表中更改时计算并显示输入字段的总数

问题描述

我有一个带输入字段的有角度的材料表。需要计算总数(无按钮)并显示底部。也当改变输入数字时,应重新计算并显示。它计算并显示 ts 文件内容的总和,但当输入框中发生变化时, concatenate 。 HTML代码

<ng-container matColumnDef="tuesday">
  <th mat-header-cell *matHeaderCellDef> tuesday </th>
  <td mat-cell *matCellDef="let transaction">
    <mat-form-field>
      <input  [(ngModel)]="transaction.tuesday" placeholder="Field Name" matInput ="number"/>
         </td>
  <td mat-footer-cell *matFooterCellDef> {{getTotalCostTuesday() | currency}} </td>
</ng-container>

TS code

  transactions: PeriodicElement[] = [
  { project: 'Hydrogen',monday:1,tuesday:2},{ project: 'Helium',tuesday: 5 },{ project: 'Lithium',tuesday: 3},{ project: 'Beryllium',tuesday: 4 },];
getTotalCostTuesday() {
  return this.transactions.map(t => t.tuesday
    ).reduce((acc,value) => acc + value,0);
   
}

解决方法

这种连接是由于 value(来自输入字段)是一个字符串。在添加之前将其更改为数字。

getTotalCostTuesday() {
  return this.transactions.map(t => t.tuesday
    ).reduce((acc,value) => acc + parseInt(value),0);  
}