Изменить значение переменной в файле Angular html - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть переменная типа номера в машинописном файле. Теперь я хочу реализовать post-fix для этой переменной в файле angular html внутри l oop.

Я пробовал это: Внутри машинописного файла

templateID:number=0;

И в html file

{{templateID++}} //here it gives me error

Как я могу это сделать? Пожалуйста, помогите.

1 Ответ

0 голосов
/ 06 апреля 2020

Вы хотите отобразить число, относящееся к текущему индексу внутри *ngFor. В настоящее время вы пытаетесь увеличить свойство уровня компонента на каждой итерации l oop.

. В текущем подходе есть 2 проблемы:

  1. Должны быть прочитаны выражения интерполяции -only
  2. Вы пытаетесь использовать свойство уровня компонента, которое отличается для каждого элемента массива. Каждый раз, когда вы увеличиваете значение свойства, все HTML, связанные с этим свойством, будут отображать обновленное значение.

Я бы подошел к этому на основе модели. Создайте вложенный массив идентификаторов шаблонов, который соответствует структуре вашего существующего вложенного массива.

Вы не дали никакого кода [править - на момент написания], поэтому я собираюсь использовать вложенный массив строк и создайте соответствующий вложенный массив `templateIds

component.ts

templates: string[][];
templateIds: number[][];

ngOnInit() {
  this.templates = [
    [ 'a', 'b', 'c' ],
    [ 'd' ],
    [ 'e', 'f' ],
    [ 'g', 'h', 'i' ]
  ];

  this.templateIds = [];

  let templateId = 0;
  this.templates.forEach((x, i) => {
    this.templateIds.push(x.map(x => templateId++));
  });
}

Затем вы можете использовать индекс из *ngFor для доступа к templateIds* https://stackblitz.com/edit/angular-yc6zvh

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