Angularjs 子数组中第一项的角度OrderBy属性
我有下面的JSONAngularjs 子数组中第一项的角度OrderBy属性,angularjs,Angularjs,我有下面的JSON { "item": { "id": 1 "owners": [ { "name": "bob" } { "name": "jane" } ] } "item": { "id": 2 "owners": [
{
"item": {
"id": 1
"owners": [
{
"name": "bob"
}
{
"name": "jane"
}
]
}
"item": {
"id": 2
"owners": [
{
"name": "jim"
}
{
"name": "mary"
}
]
}
}
我正在尝试按第一个所有者排序,所以类似于
$scope.predicate = 'item.owners[0].name';
但这似乎不起作用,有没有正确的方法可以做到这一点?因为“谓词”是在每个尾部的上下文中计算的,它应该是这样的:所有者[0]。名称
例如:
$scope.predicate='owners[0].name';
$scope.reverse=false;//还是真的
另外,请参见此您想做什么?您想按键“name”还是按值“jim”排序?按名称的值排序,因此“jim”和“bob”对不起,让我改进JSON,这样会更有意义。这有什么意义吗?所以我每次都想按第一个所有者的名字排序。那么tails
array呢?无论如何,您正在尝试按'item.owners[0].name'
排序,就像字符串一样,它应该是一个值,因此更改$scope.predicate='item.owners[0].name'代码>到$scope.predicate=item.owners[0]。名称代码>抱歉的尾巴==我忘记混淆的项目:-)看起来不错,我会在我的本地进行2次检查并给你检查谢谢!
<div class="row item-row" ng-repeat="item in items | orderBy:predicate:reverse"></div>
<div ng-repeat="tail in tails | orderBy:predicate:reverse">
$scope.predicate = 'owners[0].name';
$scope.reverse = false; // or true