Angularjs ng-repeat 运行 基于值的总数
Angularjs ng-repeat running total based on value
在 angularjs 工作,希望根据从数据中检索到的值保持 运行 总数。以下代码始终 returns 所有项目的完整总价值。
<div ng-repeat="child in pItem.childItems | orderBy:'displayOrder'" ng-init="$parent.totalValue = $parent.totalValue + child.field[0].value">
将其从父范围更改为子范围会在每次重复时清除总值。因此,该值始终等于该一项的子值。
我正在寻找 returns 类似于以下内容的内容。其中 Item1 的值为 2,Item2 的值为 3,Item3 的值为 4。
- 项目 1 2
- 项目 2 5
- 项目 3 9
尝试这样的事情,这应该可以解决问题:
<div
ng-repeat="child in pItem.childItems | orderBy:'displayOrder'"
ng-init="child.totalValue = pItem.childItems[$index-1].totalValue + child.field[0].value">
{{child.field[0].value}} {{child.totalValue}}
</div>
所以你基本上和之前的 totalValue 结果相加。
在 angularjs 工作,希望根据从数据中检索到的值保持 运行 总数。以下代码始终 returns 所有项目的完整总价值。
<div ng-repeat="child in pItem.childItems | orderBy:'displayOrder'" ng-init="$parent.totalValue = $parent.totalValue + child.field[0].value">
将其从父范围更改为子范围会在每次重复时清除总值。因此,该值始终等于该一项的子值。
我正在寻找 returns 类似于以下内容的内容。其中 Item1 的值为 2,Item2 的值为 3,Item3 的值为 4。
- 项目 1 2
- 项目 2 5
- 项目 3 9
尝试这样的事情,这应该可以解决问题:
<div
ng-repeat="child in pItem.childItems | orderBy:'displayOrder'"
ng-init="child.totalValue = pItem.childItems[$index-1].totalValue + child.field[0].value">
{{child.field[0].value}} {{child.totalValue}}
</div>
所以你基本上和之前的 totalValue 结果相加。