Angular Academy · Урок

Циклы с помощью @for

Выводите списки с помощью @for и выражений track.

Урок 2 из 413 шагов

«Циклы с помощью @for» — бесплатный урок Angular Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Angular Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Angular Academy содержит 4 уроков всего.

Циклы с for

Блок at-for повторяет содержимое для каждого элемента коллекции. Он заменяет старую директиву star-ngFor и требует выражения track.

Базовый синтаксис for

Запишите символ @, слово for, затем item of items и обязательную конструкцию track с указанием уникального ключа.

// @for (item of items; track item.id) {
//   <li>{{ item.name }}</li>
// }

Почему track обязателен

Выражение track сообщает Angular, как идентифицировать каждый элемент при изменениях, чтобы повторно использовать узлы DOM, а не создавать их заново. Это значительно повышает производительность.

Отслеживание по идентичности

Если у элементов нет стабильного идентификатора (например, это список примитивных строк), можно отслеживать сами элементы.

// @for (name of names; track name) {
//   <li>{{ name }}</li>
// }

Блок empty

Блок at-empty отображается, когда в коллекции нет элементов. Он следует за закрывающей фигурной скобкой блока at-for.

// @for (item of items; track item.id) {
//   <li>{{ item.name }}</li>
// } @empty {
//   <li>No items found</li>
// }

Контекстные переменные

Внутри блока at-for доступны полезные переменные, включая index, count, first, last, even и odd. Сохраните их с помощью let.

// @for (item of items; track item.id; let i = $index) {
//   <li>{{ i }}: {{ item.name }}</li>
// }

Переменная index

Значение dollar-index задаёт позицию текущего элемента, начиная с нуля; обычно ему присваивают другое имя локальной переменной, как показано выше.

first и last

Логические значения dollar-first и dollar-last равны true для первого и последнего элементов соответственно; это удобно для стилизации или разделителей.

even и odd

Логические значения dollar-even и dollar-odd помогают задавать чередующиеся стили строк.

Цикл по сигналу

Коллекция может поступать из сигнала: просто вызовите его в выражении for.

// @for (todo of todos(); track todo.id) {
//   <li>{{ todo.text }}</li>
// }

Преимущество для производительности

Поскольку track обязателен, новый at-for работает быстрее star-ngFor без trackBy: Angular всегда знает, как сопоставить элементы с узлами DOM.

Быстрая проверка: циклы

Требование блока for.

Повторение: циклы

Вы изучили блок at-for с обязательным выражением track, блок at-empty для пустых коллекций и контекстные переменные, такие как index, first, last, even и odd. Он заменяет star-ngFor. Далее: переключение с помощью at-switch.

Можно начать бесплатно

Изучай HTML с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
38
Уроки
144

Часто задаваемые вопросы

Урок «Циклы с помощью @for» бесплатный?

Да — полный текст урока «Циклы с помощью @for» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Angular Academy, подпишись на CoddyKit PRO. Курс Angular Academy содержит 4 уроков всего.

Чему я научусь в уроке «Циклы с помощью @for»?

Выводите списки с помощью @for и выражений track. Ты практикуешь Angular Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Angular Academy?

Предыдущий опыт не требуется. Angular Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Циклы с помощью @for»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Angular Academy?

Да. Каждый урок Angular Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Условный вывод с помощью @if
  2. Циклы с помощью @for
  3. Переключение с помощью @switch
  4. Отложенная загрузка с помощью @defer
← Назад к Angular Academy