本文介绍了使用其他控制器计算 ng-repeat 中的总行数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我得到了要计算总数的行.
I got rows where a total will be calculated.
在我的 ng-repeat 中,我有一个控制器 RowCtrl
,用于计算总数.
In my ng-repeat I have a controller RowCtrl
where I calculate the total.
app.controller('RowCtrl', function ($scope) {
$scope.unit_price = 0;
$scope.quantity = 0;
$scope.$watchCollection('[row.unit_price, row.quantity]', function () {
$scope.row.total = $scope.row.unit_price * $scope.row.quantity;
});
});
如何计算所有行的总数?
How can I calculate the total of all the rows?
在 fiddlr 中,我有一个已计算行总数的行的演示.
In the fiddlr I have a demo of the rows where the total of a row is already calculated.
Fiddlr:http://jsfiddle.net/9t9em/1/
推荐答案
你不需要 RowCtrl
you don't need RowCtrl
app.controller('MainCtrl', function ($scope) {
$scope.rows = [{
unit_price: 1,
quantity: 0
}, {
unit_price: 2,
quantity: 0
}, {
unit_price: 3,
quantity: 0
}];
$scope.$watch('rows', function () {
$scope.total = 0
angular.forEach($scope.rows, function(row){
$scope.total += row.unit_price * row.quantity
})
}, true)
});
这篇关于使用其他控制器计算 ng-repeat 中的总行数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!