我在AngularJS的應用程序中使用MEAN堆棧作爲我的前端。如何在angularjs中的數組值的總和,實際上我們已經使用ng-repeat內部的一個更多的ng-repeat來獲取表中的值,並且我得到了像250
在Sprice
中提取的值,然後我期望總計sprice
值如同ans= 250
。如何在Angularjs中的數組內值的總和?
我們已經使用了兩個NG-重複獲得在表中的
sprice
值,因爲sprice
是在[排列]內。我們需要計算表中的
sprice
的總和。我們有過濾功能來計算ng-module值的總和,如果它沒有數組的話。
其實我們不知道如何在ng-repeat中使用
resultValue=
。例如:表中的sprice值爲250意味着總數值需要在
250
,如果sprice值爲250,並且300表示期望回答如550
。沒有
array
totalsum功能:My Plunker隨着
array
totalsum功能:My Plunker
我的控制器:
.filter('sumOfValue', function() {
return function (data, key) {
debugger;
if (angular.isUndefined(data) && angular.isUndefined(key))
return 0;
var sum = 0;
angular.forEach(data,function(v,k){
sum = sum + parseFloat(v[key]);
});
return sum.toFixed(2);
}
})
我的大TA: -
$scope.orders = [
{
"_id": "5836b64083d9ce0f0078eae8",
"user": {
"_id": "579bdf6123f37f0e00a40deb",
"displayName": "Table 1"
},
"__v": 8,
"total": "1824",
"ordercar": [],
"orderfood": [
{
"qty": "1",
"confirm": "placed",
"sprice": 250,
"price": 250,
"customise": "With Onion,Without Onion",
"name": "Baasha Pizza"
}
],
"phone": null,
"order_source": "",
"comment": "",
"payment_mode": "",
"nop": null,
"rating": null,
"bill": false,
"complete": false,
"laundry": false,
"clean": false,
"roomservice": false,
"napkin": false,
"waiter": false,
"water": false,
"name": "fgg",
"created": "2016-11-24T09:43:28.413Z",
"isCurrentUserOwner": true
}]
我的HTML: -
<table ng-table="tableParams" class="table table-bordered ">
<thead>
<tr>
<th rowspan="2">s.no</th>
<th rowspan="2"> sprice </th>
</tr>
</thead>
<tr ng-repeat="order in orders">
<td>{{$index + 1}}</td>
<td ng-repeat="ram in order.orderfood">{{ram.sprice }}</td>
</tr>
<tr>
<td>sum</td>
<td>{{resultValue | sumOfValue:'sprice'}}</td>
</tr>
</table>
*我們預計在數組值總和。
使用NG-重複:
<tr ng-repeat="order in orders">
<td>{{$index + 1}}</td>
<td ng-repeat="ram in order.orderfood">{{ram.sprice }}</td>
感謝您的寶貴答案,可以ü請更新plunker以及知道確切的解決方案,請看我的plunker totalsum功能,並請給這個完美的解決方案.....謝謝 –