Чтобы создать отдельный класс для первого элемента в миксине Pug, можно воспользоваться условным оператором и переменной, которая будет отслеживать, является ли текущий элемент первым или нет.
Вот пример миксина Pug, который добавляет класс "first" к первому элементу:
mixin customMixin(items) each item, index in items - let firstClass = (index === 0) ? 'first' : '' div(class=firstClass)= item
Здесь мы используем each
для итерации по элементам в переданном массиве items
. Для каждого элемента мы проверяем, является ли он первым с помощью условного оператора: let firstClass = (index === 0) ? 'first' : ''
. Если текущий индекс равен 0 (то есть элемент первый), то присваиваем переменной firstClass
значение 'first', иначе присваиваем пустую строку.
Затем мы добавляем переменную firstClass
в класс элемента с помощью атрибута class
: div(class=firstClass)= item
.
Теперь, если используем миксин customMixin
с массивом [ 'item1', 'item2', 'item3' ]
, первому элементу будет добавлен класс "first":
+customMixin([ 'item1', 'item2', 'item3' ])
В результате получим следующий HTML:
<div class="first">item1</div> <div>item2</div> <div>item3</div>
Таким образом, в миксине Pug можно легко добавить отдельный класс к первому элементу, используя условный оператор и переменную для отслеживания индекса элемента.