angular - 从对象数组中显示“实时”数量总和的最佳方式
问题描述
下面是我拥有的数组。我正在构建一个离子/角度应用程序,并希望在屏幕上显示 Total,这将是下面对象数组中 Quanties 的总和。
这个数组可以添加对象,数量也可以增加/减少......但我希望这个总数能够反映这些变化。解决这个问题的最佳方法是什么?
解决方案
这一行应该做
let sum = LotsForCheckIn.map(lot => lot.Quantity).reduce((prev, curr) => prev + curr, 0);
更新:
我在这里假设您LotsForCheckIn
在某处的组件中有一个作为类属性。
组件html:
<div>
Total {{sum()}}
</div>
组件 ts:
@Component({
selector: "app-root",
templateUrl: "./app.component.html",
styleUrls: ["./app.component.scss"]
})
export class AppComponent {
LotsForCheckIn = [];
sum(){
this.LotsForCheckIn
.map(lot => lot.Quantity)
.reduce((prev, curr) => prev + curr, 0);
}
}
现在,对列表的任何更改都将反映在 UI 中,而无需任何额外的代码。
推荐阅读
- r - 修复“增强:”字段中存档 R 包的 CRAN 注释
- spring-boot - 在 Spring Controller E2E 测试中加载 ApplicationContext 失败
- node.js - HTTP 错误 500.1013 - 在 Azure 中上传超过 250 mb 的文件 IIS 节点时出现内部服务器错误
- java - 预期为 BEGIN_OBJECT,但在第 4 行第 1 列路径 $
- sabre - Sabre Web 服务:重新验证票证
- amazon-web-services - 如何执行 AWS Cli 脚本
- bitmapfactory - Android 10:BitmapFactory.decodeFileDescriptor 返回 null
- salesforce - 在 Salesforce 中批量删除未使用的流版本
- unity3d - 如何更改 Text Meshpro Inputfield 的颜色文本
- spring - Spring boot & mongo:如何根据数组的长度进行排序