【发布时间】:2016-06-03 14:59:00
【问题描述】:
我目前有一个嵌套的 ngRepeat,其中内部循环迭代其父项的集合。摘录:
<div ng-repeat="person in persons">
(Irrelevant code here.)
<table>
<tr>
<th ng-click="setItemOrder('name')">Item name</th>
<th ng-click="setItemOrder('number')">Item number</th>
</tr>
<tr ng-repeat="item in person.items | orderBy:itemOrder">
<td>{{item.name}}
<td>{{item.number}}
</tr>
</table>
</div>
通过单击表头,我将控制器中的itemOrder-property 设置为我希望orderBy 使用的属性的名称:
$scope.setItemOrder = function(order){
$scope.itemOrder = order;
}
这一切都很好,除了如果我单击 one person-div 中的标题,all person-divs 中的 item-tables对该属性进行排序。
有没有办法让 ngRepeat 仅将 orderBy 应用于符合特定条件的条目 - 例如特定索引?还是我应该使用不同的方法?
【问题讨论】:
标签: angularjs sorting angularjs-ng-repeat