如何对 Angularjs 中的两个值求和?
How To Totalsum Two Values In Angularjs?
我在我的应用程序中使用 MEAN 堆栈,AngularJS 作为我的前端。如何对 angularjs 中的两个值求和,实际上我们有两个 table,我在 convertion rate
中得到了像 124.10
这样的总和值,然后我期望计算 convertion rate
总和值如 A + B
作为 124.10 + 124.10 answer = 248.20
...My Plunker.
我们有两个table所以我想计算第一个table转换率总和值和第二个table转换率总和值
例如:-第一个table转化率为124.10
,第二个table转化率为124.10
,我们需要计算这些第三个 table 中的值 A + B
答案应该是 248.20.
我已经给了plunker作为参考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);
}
})
我的数据:-
$scope.sryarndebitnote = [
{
"_id": "57ac1b6d82e1c5940ac3c730",
"user": {
"_id": "57400c32bd07906c1308e2cf",
"displayName": "mani selvam"
},
"__v": 0,
"created": "2016-08-11T06:30:05.118Z",
"shipment_id": "57ac19b982e1c5940ac3c72f",
"conversion_rate": "62.04",
"invoice_value_fob_currency": "Rs",
"invoice_value_fob": "300.231",
"invoice_quantity_unit": "KG",
"invoice_quantity": "37",
"invoice_date": "2016-08-17",
"supplier_name": "Msd",
"buyer_name": "Mani selvam .R"
},
{
"_id": "57b5af69df0475401f644b2e",
"user": {
"_id": "57400c32bd07906c1308e2cf",
"displayName": "mani selvam"
},
"__v": 0,
"created": "2016-08-18T12:51:53.671Z",
"shipment_id": "57b5af5bdf0475401f644b2d",
"conversion_rate": "62.06",
"exclusive": true,
"invoice_value_fob": "400.343",
"invoice_quantity": "97",
"supplier_name": "Msd",
"buyer_name": "Mani selvam .R"
},]
我的Html:-
<tr ng-repeat="mani in resultValue=(sryarndebitnote)">
<td >{{$index + 1}}</td>
<td >{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}</td>
</tr>
<tr>
<td>sum</td>
<td>B = {{resultValue | sumOfValue:'conversion_rate'}}</td>
</tr>
第三个table应该是a+b
计算值和C
值的最终总和,如A+B
值248.20,所以c
值总和为496.40
.
c
总和值`496.40.
{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}
不鼓励使用这种技巧来强制进行整数求和,您不应在敏感应用程序中使用它们。
话虽这么说;
您实际上必须强制 filter 的结果为整数。例如:
{{(resultValue | sumOfValue:'conversion_rate')*1 + (resultValue | sumOfValue:'conversion_rate')*1}}
但在这种情况下,您确实应该想出更稳健的方法。即使在你的控制器中包装 parseInt
函数也能达到目的。
进一步阅读:
How to parseInt in Angular.js
改变这个:
<td >{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}</td>
为此:
<td>{{((resultValue | sumOfValue:'conversion_rate')*1) + ((resultValue | sumOfValue:'conversion_rate' )*1)}}</td>
问题是括号。
我在我的应用程序中使用 MEAN 堆栈,AngularJS 作为我的前端。如何对 angularjs 中的两个值求和,实际上我们有两个 table,我在 convertion rate
中得到了像 124.10
这样的总和值,然后我期望计算 convertion rate
总和值如 A + B
作为 124.10 + 124.10 answer = 248.20
...My Plunker.
我们有两个table所以我想计算第一个table转换率总和值和第二个table转换率总和值
例如:-第一个table转化率为
124.10
,第二个table转化率为124.10
,我们需要计算这些第三个 table 中的值A + B
答案应该是 248.20.我已经给了plunker作为参考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);
}
})
我的数据:-
$scope.sryarndebitnote = [
{
"_id": "57ac1b6d82e1c5940ac3c730",
"user": {
"_id": "57400c32bd07906c1308e2cf",
"displayName": "mani selvam"
},
"__v": 0,
"created": "2016-08-11T06:30:05.118Z",
"shipment_id": "57ac19b982e1c5940ac3c72f",
"conversion_rate": "62.04",
"invoice_value_fob_currency": "Rs",
"invoice_value_fob": "300.231",
"invoice_quantity_unit": "KG",
"invoice_quantity": "37",
"invoice_date": "2016-08-17",
"supplier_name": "Msd",
"buyer_name": "Mani selvam .R"
},
{
"_id": "57b5af69df0475401f644b2e",
"user": {
"_id": "57400c32bd07906c1308e2cf",
"displayName": "mani selvam"
},
"__v": 0,
"created": "2016-08-18T12:51:53.671Z",
"shipment_id": "57b5af5bdf0475401f644b2d",
"conversion_rate": "62.06",
"exclusive": true,
"invoice_value_fob": "400.343",
"invoice_quantity": "97",
"supplier_name": "Msd",
"buyer_name": "Mani selvam .R"
},]
我的Html:-
<tr ng-repeat="mani in resultValue=(sryarndebitnote)">
<td >{{$index + 1}}</td>
<td >{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}</td>
</tr>
<tr>
<td>sum</td>
<td>B = {{resultValue | sumOfValue:'conversion_rate'}}</td>
</tr>
第三个table应该是
a+b
计算值和C
值的最终总和,如A+B
值248.20,所以c
值总和为496.40
.c
总和值`496.40.
{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}
不鼓励使用这种技巧来强制进行整数求和,您不应在敏感应用程序中使用它们。
话虽这么说; 您实际上必须强制 filter 的结果为整数。例如:
{{(resultValue | sumOfValue:'conversion_rate')*1 + (resultValue | sumOfValue:'conversion_rate')*1}}
但在这种情况下,您确实应该想出更稳健的方法。即使在你的控制器中包装 parseInt
函数也能达到目的。
进一步阅读:
How to parseInt in Angular.js
改变这个:
<td >{{(resultValue | sumOfValue:'conversion_rate' * 1) + (resultValue | sumOfValue:'conversion_rate' *1)}}</td>
为此:
<td>{{((resultValue | sumOfValue:'conversion_rate')*1) + ((resultValue | sumOfValue:'conversion_rate' )*1)}}</td>
问题是括号。