2016-12-26 5 views
3

ng-repeatの下に詳細に115冊の書籍が格納されています。 {{$ index +1}}を使用すると、1〜115の数が表示されます。私が姓で本をフィルタリングして12を表示すると、{{$ index + 1}}は1〜12の数を表示します。代わりに、$ indexを使用して逆数を表示して、最低に行く?フィルタリングなしで、これは使用して動作します - 12の項目で結果をフィルタリングするときに{{details.length $インデックスを}}私はこのようなNGリピート有する104の代わりに1angularjs - フィルタリングを使用してng-repeatで逆算する

スルー12を介して115を示す:

<tr ng-repeat="det in details | orderBy:['-YEAR_READ','-UniqueCounter'] | filter:searchingFor> 
    <td>{{$index + 1}}</td> 
    <td>{{details.length - $index}}</td> 
    <td> 

答えて

1

現在、フィルタリングされていないコレクションを参照しているインデックスを表示しているため、details.length変数を使用してフィルタリングされた結果のカウントを見ることはできません。好き

app.filter('reverse', function() { 
    return function(items) { 
    return items.slice().reverse(); 
    }; 
}); 

し、それを使用します:あなたが好きな、逆の動作を取得するために、コレクションに新しいフィルタを適用することができます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> 
0

のようなトリックを行うだろうasを使用してエイリアスフィルタオブジェクトを使用し

<tr ng-repeat="det in details |reverse | orderBy:['-YEAR_READ','-UniqueCounter'] | filter:searchingFor > 
    <td>{{$index + 1}}</td> 
    <td>{{details.length - $index}}</td> 
    <td> 
</tr> 
+0

は、フィルタリングされていない配列の長さを表示します – charlietfl

関連する問題