我在 ng-repeat 中详细存储了 115 本书的数组。当使用 {{$index +1}} 时,出现 1 到 115 的计数。如果我按姓氏过滤书籍并显示 12,{{$index + 1}} 将显示 1 到 12 的计数。是否可以使用 $index 显示反向计数,以便计数从最高数字开始去最低?如果没有过滤,这将使用 {{details.length - $index}} 工作,但是当过滤 12 个项目的结果时,显示 115 到 104 而不是 12 到 1。
我有一个像这样的 ng-repeat:
<tr ng-repeat="det in details | orderBy:['-YEAR_READ','-UniqueCounter'] | filter:searchingFor>
<td>{{$index + 1}}</td>
<td>{{details.length - $index}}</td>
<td>
最佳答案
目前在显示索引时,您引用的是未过滤的集合,因此您无法使用 details.length
变量查看过滤后的结果计数。使用 as
使用别名过滤器对象会像 ng-repeat="item in item | filter: { prop: 'search' }| customFilter as filteredResult"
<tr
ng-repeat="det in details | orderBy:['-YEAR_READ','-UniqueCounter'] | filter:searchingFor as filtered">
<td>{{$index + 1}}</td>
<td>{{filtered.length - $index}}</td>
<td>
</tr>
关于angularjs - 在带有过滤的ng-repeat中反向计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41336052/