Я пытаюсь создать pug mixin, который может обрабатывать различное форматирование в зависимости от длины сгенерированного списка.У меня есть возможность принимать неограниченные значения, и я могу создать один список без проблем.
Когда я пытаюсь отсортировать элементы по индексу, чтобы создать несколько списков, код либо генерирует новый <ul>
длякаждый <li>
или вообще ничего для более длинного форматирования списка.
Как это сделать, если длина массива элементов больше 5, он помещает первые 5 элементов в список 1, а остальныево втором списке?
код:
mixin panelList(...items)
if items.length < 6
ul.list-unstyled.col.col-12.col-lg-12.d-none.d-lg-inline
each item in items
li.list-item.my-lg-1= item
else
each item in items
.row.row-12
while index < 6
ul.list-unstyled.col.col-12.col-lg-6.offset-sm-4.offset-md-0.offset-lg-0.d-none.d-lg-inline
li.list-item.my-lg-1= item
while index > 5
ul.list-unstyled.col.col-12.col-lg-12.d-none.d-lg-inline
li.list-item.my-lg-1= item
mixin panelList(...items)
if items.length < 6
ul.list-unstyled.col.col-12.col-lg-12.d-none.d-lg-inline
each item in items
li.list-item.my-lg-1= item
else
each item in items
.row.row-12
while index < 6
ul.list-unstyled.col.col-12.col-lg-6.offset-sm-4.offset-md-0.offset-lg-0.d-none.d-lg-inline
li.list-item.my-lg-1= item
while index > 5
ul.list-unstyled.col.col-12.col-lg-12.d-none.d-lg-inline
li.list-item.my-lg-1= item
реализовано с помощью:
+panelList("this", "is", "working", "great")
отлично работает
проблема со списком типа:
+panelList("this", "is", "not", "working", "quite", "as", "intended", "yet")
Я пробовал сортировать по %
, но он генерирует новый <ul>
для каждого элемента.Я пытался использовать item.index и индекс.Я пытался использовать for
и if
вместо while
до индекса <6. </p>