Предположим, у меня есть массив данных следующим образом.Объявление переменной подсчета в шаблоне angular2 ngFor
datas : [
{
nums : [121,222,124,422,521,6312,7141,812]
},{
nums : [121,222,124,422,521,6312,7141,812]
},{
nums : [121,222,124,422,521,6312,7141,812]
}
]
nums = [121,222,124,422,521,6312,7141,812]
Я хотел показать четные числа в массиве после серийного номера, как показано ниже.
1. 222
2. 124
3. 422
4. 6312
5. 812
6. 222
7. 124
8. 422
9. 6312
10. 812
11. 222
12. 124
13. 422
14. 6312
15. 812
Но я не мог понять, как установить индексы после «четной» проверки. В настоящее время я показываю тексты, используя следующий код.
<div *ngFor="let data of datas">
<div *ngFor="let num of data.nums; let rowIndex = index">
<div *ngIf="num % 2 == 0">
{{rowIndex+1}}. {{num}}
</div>
</div>
</div>
Но он показывает
2. 222
3. 124
4. 422
6. 6312
8. 812
2. 222
3. 124
4. 422
6. 6312
8. 812
2. 222
3. 124
4. 422
6. 6312
8. 812
Есть ли способ, чтобы установить счетчик, который увеличивает каждый раз, когда условие ngIf
проверяются, так что я могу показать с правильными индексами.
Хорошо .. он работает для одного ngFor. Я просто обновил вопрос с моей реальной сцены. У меня есть вложенные ngFors. Я путаюсь, как реализовать Трубу здесь. Не могли бы вы изменить свой ответ соответственно? –
Я обновил ответ – bergben
Но я думаю, что здесь для второго объекта данных индекс начнется с первого раза. И аналогично для третьего объекта данных. Таким образом, подсчет будет 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, .. и так далее. –