我有一个梯子,我的用户按分数排序,我使用ng-repeat中的变量来了解我的用户在梯子中的位置
<tr ng-repeat="user in users| orderBy:'-score'" ng-init="pos=0">
<td>{{pos + $index + 1}}</td>
<td>{{user.email}}</td>
<td>{{user.score}}</td>
<tr>
我想将这些数据保存在控制器中,每个用户必须具有等级
{{pos + $index + 1}}
示例:
{user :
"score":12,
"email":test,
"rank": (result of var {{pos + $index + 1}})
}
我想知道如何在我的控制器中获得他的价值结果
第2部分
谢谢你的回答:) 但是当我显示新值时,我得到了未定义
var User = $resource('http://localhost:1337/user');
var user = User.query(function(data){
$scope.users = data;
console.log("Try to display rank",$scope.users[0].rank);
}
在控制台中:尝试显示未定义的等级
这很奇怪,因为当我尝试:
console.log("Try to display rank",$scope.users[0]);
我得到了:
尝试显示排名{email : “测试1”, 名字 : 测试, ID : 1, isLogged : 空值, 姓 : 空值, 的秩 : 4, rankPrevious : 空值, 得分了 : 20}
由于
答案 0 :(得分:0)
在html中
{{user.rank = pos + $index + 1}}
上面的表达式将pos + $index + 1
的结果分配给用户对象中的user.rank
。因此,每个user
对象都有自己的rank
单独保持跟踪。
在控制器中,您可以使用
访问每个排名$scope.users[0].rank
$scope.users[1].rank