Обновить
18
0
Александр Юденич@nightzen

Frontend Developer

Отправить сообщение

Ну тут опять же, на вкус и цвет, по аналогии с SASS/SCSS. Можно использовать сочетание Emmet + Pug.

Насколько я знаю, в Pug, если теги имеют одинаковые отступы, то они находяться на одном уровне. Если у второго тега отступ больше, то он вложен в предыдущий. Prettier же не будет угадывать, что Вы имели в виду. Тут он как раз больше поможет с чистым HTML.

Потерять тег при правке HTML конечно можно, но есть различные хоткеи на этот случай.

В чём заключается бойлерплейт, если честно, не понял)

Разница не только в этом, Emmet предназначен для того, чтобы быстро набросать структуру разметки за счёт расширения аббревиатур:

nav>ul>li*4>a[class="link"]{Link $}

<nav>
  <ul>
    <li><a href="" class="link">Link 1</a></li>
    <li><a href="" class="link">Link 2</a></li>
    <li><a href="" class="link">Link 3</a></li>
    <li><a href="" class="link">Link 4</a></li>
  </ul>
</nav>

Чтобы добиться такого же результата в Pug, нужно написать цикл и следить за отступами:

nav
  ul
    - for (var x = 1; x <= 4; x++)
      li
        a(class='link')= "Link" + x

Pug же, в свою очередь, добавляет такие фичи, как условия, циклы, блоки и прочее. Если создаётся статический сайт или нужен шаблонизатор для какого-нибудь фреймворка, то стоит присмотреться к Pug. Если рассматривать JSX, то тут уже есть условия, циклы и компоненты. Есть плагин, но тут встаёт вопрос о том, насколько он хорошо поддерживается. Я ни разу не встречал Pug в проектах на реакте. Emmet, в этом плане, хорош тем, что не требует написания плагинов babel. Можно создавать свои аббревиатуры и фрагменты для любого языка.

Добавил в статью более подробное описание этого момента.

Мне, лично, Pug не очень нравится по тем же причинам, почему многие предпочитают SCSS вместо SASS.

Это исходная статья, просто она находилась 5 дней на модерации.

При написании руководств JSDoc можно использовать markdown.

Много усилий не нужно, чтобы научиться писать комментарии JSDoc. На ревью это проверяется также, как и всë остальное. Детальность описания может быть заранее утверждена командой. Например, у функций описываются только параметры и возвращаемое значение. Сложные кейсы описываются в руководствах + можно добавить storybook.

Протестировал в Firefox 91.0 (Mozilla Firefox for Ubuntu). Работает также, как описано в статье.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность