Как дать класс определенному элементу из цикла?

В Pug (ранее известном как Jade) есть несколько способов задать класс определенному элементу из цикла. Вот несколько примеров:

1. Использование управляющей конструкции each:

   each item in items
     div(class=(item == 'red' ? 'red-class' : 'default-class'))= item

Здесь мы проверяем значение переменной item и, если оно равно 'red', задаем класс 'red-class', в противном случае -- 'default-class'.

2. Использование управляющей конструкции each с объектами:

   each item, index in items
     div(class=(index % 2 === 0 ? 'even-class' : 'odd-class'))= item

Здесь мы используем вторую переменную index для определения текущего индекса элемента. Если индекс четный, мы задаем класс 'even-class', в противном случае -- 'odd-class'.

3. Использование условия if внутри управляющей конструкции each:

   each item in items
     div(class=(if item === 'selected' then 'selected-class' else 'default-class'))= item

Здесь мы используем управляющую конструкцию if внутри цикла each, чтобы определить класс элемента в зависимости от его значения. Если значение равно 'selected', мы задаем класс 'selected-class', в противном случае -- 'default-class'.

4. Использование оператора ternary в атрибуте класса:

   each item in items
     div(class=item === 'highlighted' ? 'highlighted-class' : 'default-class')= item

Здесь мы используем оператор ternary внутри атрибута класса элемента. Если значение item равно 'highlighted', мы задаем класс 'highlighted-class', в противном случае -- 'default-class'.

Все эти примеры позволяют задать класс определенному элементу из цикла в Pug. Вам следует выбрать тот, который лучше всего подходит для вашей конкретной ситуации и логики вашего приложения.