1
我有一個按屬性「年齡」和「名稱」排序的表,但我有一個計數器行(counterR),顯示錶中的行數。 我想排除OrderBy上的這個項目,因爲也是有序的,我需要它是靜態的,並且總是有序的,但我不能。 有我的問題的Plunker鏈接:http://plnkr.co/edit/MJYayUANphxksbGkyEcj?p=preview排除OrderBy在表中的項目 - AngularJS
HTML:
<body ng-controller="MainCtrl">
<table border="0">
<thead>
<tr>
<th>#</th>
<th>ID</th>
<th ng-click="sortType = 'name';sortReverse=!sortReverse">NAME</th>
<th ng-click="sortType = 'age';sortReverse=!sortReverse">AGE</th>
</tr>
</thead>
<tbody>
<tr ng-init="counterR=incrementCounter()" ng-repeat="item in items | orderBy:sortType:sortReverse">
<td>{{counterR}}</td>
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.age}}</td>
</tr>
</tbody>
</table>
JS:
$scope.items = [
{"name":"Jhon","id":"BB1","age":23},
{"name":"Austin","id":"BB2","age":44},
{"name":"Mark","id":"BB3","age":56},
{"name":"Jenn","id":"BB4","age":15}
];
var counterRow = 0;
$scope.incrementCounter = function(){
counterRow = counterRow + 1;
return counterRow;
}
由於它的工作原理(假設序列號從1開始)!但是,當我添加一個人的年齡高於21歲的過濾器時,在對項目應用OrderBy時,行的計數器不是順序的,是否有其他方法而不是$ index?有Plunker鏈接:http://plnkr.co/edit/unwHb9XS46S2qoc2QpJV?p=preview –
對不起,我不追隨陌生人的plnkr鏈接。如果你想在這裏發佈額外的代碼,我會很高興看到它。或者,您可能想查看AngularJS的ngRepeat文檔(https://docs.angularjs.org/api/ng/directive/ngRepeat);從示例中注意,您描述的症狀不是預期的。 –
當然,我只能改變這樣的: HTML: