Лучшие Практики

Пробелы вокруг условных атрибутов

Иногда условия используются для добавления классов в тег. djLint удаляет пробелы внутри условных операторов.

Этот шаблон рекомендуется:

<div class="class1 {% if condition -%}class2{%- endif %}">содержание</div>
                  ^ место здесь

Эта схема не рекомендуется:

<div class="class1{% if condition -%} class2{%- endif %}">содержание</div>
                                     ^ место здесь

format_attribute_template_tags и беспространственные условные атрибуты

Если format_attribute_template_tags опция включена, условные атрибуты должны использовать теги без пробелов, например {% if a -%} в nunjuck и jinja, чтобы удалить пробелы внутри.

djLint будет форматировать длинные атрибуты на несколько строк, и пробелы, сохраненные внутри атрибутов, могут сломать ваш код.

Рекомендуется использовать этот шаблон:

<input
  value="{% if database -%}{{ database.name }}{%- else -%}бла{%- endif %}"
/>
                        ^                       ^      ^        ^ --
беспространственные метки

Эта схема не рекомендуется:

<input value="{% if database %}{{ database.name }}{% else %}бла{% endif %}" />

После форматирования это может выглядеть следующим образом:

<input
  value="{% if database %}
                  {{ database.name }}
              {% else %}
                  бла
              {% endif %}"
/>