Как увеличить число переменных для вложенного цикла for и распечатать его - PullRequest
0 голосов
/ 03 мая 2018

В Angular 4 я пытаюсь создать вложенный цикл

   <div *ngFor="let p of prop">

    <div *ngFor="let a of p.values">

    Count is  {{count=count+1}} 

Как создать счетчик локальной переменной внутри шаблона и увеличивать его каждый раз при выполнении внутреннего цикла. Мне нужно повторно использовать этот счетчик в более поздней части, чтобы получить данные, т.е. значения [количество]. Имя ....

Выход:

Количество равно 0 Счет 1 Счет 2 Счет 3 Счет 4

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

У меня была та же проблема, что и у вас, потому что мне нужно противостоять строкам в таблице, тогда я придумаю это решение, и оно работает для меня как прелесть

<td mat-cell *matCellDef="let i= index;"> {{ [i+1] }} </td> 

Это просто и не требует труб. Надеюсь, поможет.

0 голосов
/ 03 мая 2018

Вы можете использовать значение индекса напрямую,

  <div *ngFor="let a of values; let i= index;">
     <h1>Count is  : {{i}} </h1>
  </div>

STACKBLITZ DEMO

EDIT

Обновленная демоверсия для ngFor

EDIT

Если в ваших объектах есть значения разной длины, вам нужна какая-то логика для выполнения вычислений. Я реализовал пользовательский канал для этого.

@Pipe({
  name: 'counterPipe'
})
export class CounterPipe implements PipeTransform  {
  transform(value: any): Counter {
    if (!counters.has(value)) {
      counters.set(value, new Counter());
    }
    return counters.get(value);
  }
}

DEMO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...