を表示します。 limitTo
とng-repeat
を使用できますが、これは現在の可視性に関係なくアイテムを制限し、DOMからアイテムを削除します。私はDOM内のすべてを保持しながら、目に見えるアイテムの数に制限したい。は、私は固定数に私の結果セットを制限しようとしている
は、ここで私が持っている現在のコードです。私の目標は、items
に500アイテムが含まれていても、常にリストに50アイテム以下を表示することです。
<div ng-repeat="item in items | limitTo: 50">
<div ng-show="item.visible">
<p>item.id</p>
</div>
</div>
これは、最初に50の項目に制限されるが、私は(いくつかの項目にitem.visibleを変更することによって)リストをフィルタリングする場合、リストは決して50の範囲内の項目を示していません - 500、代わりに50未満を表示しますアイテム。 ng-repeat
を制限する正しい方法は、目に見えるアイテムを制限制限にカウントするだけですか?
これは、フィルタが(ng-showのような)可視性を変更するのではなく、DOMから項目を削除するので(ng-ifのような)項目と同じではありません。私はng-showで動作するソリューションを探しています。 – Bill
隠された要素をDOMに残したい理由は何ですか? – bekite
絶えず追加したり削除したりするのが遅いです。 ng-showを使用すると、フィルタリングの経験は瞬時になります。更新された結果が表示される前にわずかなヒザクがある場合は、ngを押します。 – Bill