Я хочу ограничить итерации в ng-repeat
между диапазоном. Теперь я попытался добавить фильтр для диапазона, но по моему требованию его немного не хватает. Вот мой хтмл.
<ul ng-repeat="pitem in ParentArray">
<h4>{{pitem}}</h4>
<li ng-repeat="citem in ChildArray|filter:{pcategory:pitem}">{{citem}}</li>
</ul>
Как видите, ChildArray
фильтруется на основе pcategory
в ChildArray
. Теперь я хочу ограничить ChildArray
первыми 8 итерациями. Итак, после 8 элементов у нас есть кнопка More Items
. В чем проблема, если мы ограничим ChildArray, <h4>{{pitem...
будет там. Я тоже хочу это скрыть.
Например, вот три родительских элемента: p1, p2, p3 и p1 имеют 4 дочерних элемента, а p2 и p3 имеют 6 и 10 дочерних элементов. Таким образом, ограничение ChildArray до 8, тогда будут показаны 4 элемента p1, 4 элемента p2. Я покажу p3 при нажатии кнопки More Items
на основе решения.
ИЗМЕНИТЬ
p1, p2 и p3, имеющие дочерние элементы, как указано ниже.
p1 - c1 to c4
p2 - c1 to c6
p3 - c1 to c10
Использование limitTo:8
покажет результат ниже
<li ng-repeat="citem in ChildArray|limitTo:8|filter:{pcategory:pitem}">{{citem}}</li>
p1 - c1 c2 c3 c4
p2 - c1 c2 c3 c4
p3
Где требуемый результат
p1 - c1 c2 c3 c4
p2 - c1 c2 c3 c4
Вы можете видеть, что p3 там нет. Вот jsfiddle
limitTo: 8
- person zabusa   schedule 31.01.2018