2017-10-28 4 views
0
<div ng-repeat="item in items"> 
    <div ng-if="need something here i.e. $index = ..."> 
    </div> 
    ..data.. 
</div> 

私は上記のパターンを持っています。 itemsリストがサーバーからフェッチされます。 「もっと読み込む」ボタンを押すと、2ページ目が引かれます。 1ページにはデフォルトで8つのアイテムが含まれています。しかし、これはユーザーが指定できるので、別の値(たとえば9,10)に設定することができます。デフォルト値8を取ると、$インデックス値は、1ページのために、以下のようになります。ng-repeat、繰り返されるブロックのためにn回目にアイテムを表示する

0 
1 
2 
3 
4 
5 
6 
7 

より多くのページが引かれている場合:

0 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
... and so one 

私はそれがあるように何かにng-ifを適用したいですブロック上の4番目の項目ごとに表示されます。したがって、式:3 + i*(total_items_per_page)に従います。だから、リストのために、私は、これは動作しますが、明らかに負荷以上が押されたときに、現在のページ上の項目を削除し、$index == (page_number-1)*total_items_per_page + 3をしようとしたときtotal_items_per_page = 8

0 
1 
2 
3 
    <--- here 
4 
5 
6 
7 
8 
9 
10 
11 
    <--- here 
12 
13 
14 
15 
16 
17 
18 
19 
    <--- here 
20 
21 
... and so one 

。これを解決するか、より良い解決策を探しています。

編集:私はまた、あなたがこれを使用することができ、可変total_items_per_page

+0

なぜページ分割を使用しないのですか? –

+0

期待される結果/目的はあまり明確ではありません....おそらくあなたはまだ答えを持っていません – charlietfl

答えて

1

のための可能な限り、これはのように柔軟にするために事前に定義された配列を避けるためにしようとしています、それはすべての場合、4、12、20、28のための正しいです... :

関連する問題