【发布时间】:2015-07-09 10:40:56
【问题描述】:
下面是代码。我嵌套了 ng-repeat 和一个包含所有其他字段总和的字段。
<div class="animate margin-top" >
<div layout="row" layout-align="center" ng-repeat="data in leaderBoardData | orderBy: 'getTotal($index)'" style = "padding: 10px;" class= "md-padding">
<section class="text-center width-20"><a>{{data.handleName}}</a></section>
<section class="text-center width-20" ng-repeat="score in data.score track by $index">{{score}}</section>
<section class="text-center width-20">{{getTotal($index)}}</section>
</div>
</div>
所以我想根据动态字段getTotal($index)进行排序。我该怎么做?上面的 orderBy 不起作用。
下面是getTotal()函数的代码
$scope.getTotal = function (index) {
var total = 0
$scope.leaderBoardData[index].score.forEach(function (score) {
total = total + score
})
return total
}
下面是排行榜数据
var leaderBoardData = [ { handleName: 'xyz', score: [1,2,3] },{ handleName: 'acc', score: [4,5,6] } ]
【问题讨论】:
-
您想按“总”属性对其进行排序吗?请分享示例“leaderBoardData”结构
-
@RIYAJKHAN 是的!按总属性。将编辑并放置代码
-
@RIYAJKHAN 查看数据!
-
您要按分数对数据进行排序吗?
-
@RIYAJKHAN 总分
标签: javascript angularjs angularjs-ng-repeat angularjs-filter