Рейтинг:-2

Библиотеки, CSS и условная загрузка

флаг bn

Глядя на прикрепленный снимок экрана из mytheme.libraries.yml, я вижу «базу:», «компонент», «макет», «тему» ​​и так далее.

Эти обозначения представляют/делают что-нибудь на практике? Или это просто для организации файла library.yml, или это подразумевает, где/когда загружаются эти файлы CSS? Например, form.css загружается только при наличии формы.

Я вижу, что это происходит в модулях, но в файле theme.libraries?

Кроме того, почему здесь нет тега «yml» или «yaml»? у

Снимок экрана с файлом библиотеки темы.

leymannx avatar
флаг ne
Пожалуйста, не добавляйте скриншоты кода. Вставьте код и используйте функцию подсветки кода. Спасибо
Kevin avatar
флаг in
Я не совсем понимаю вопрос, что такое файл library.twig? Библиотеки объявляются в файле library.yml в модуле или теме.
blur avatar
флаг bn
Извините - теперь я буду публиковать код, а также позабочусь о том, чтобы мои расширения файлов были правильными. Упс. спасибо за наводку.
Рейтинг:2
флаг ru

база, составные части и т.д. SMACSS вдохновленные категории, метод организации CSS в крупномасштабных проектах (в Drupal это также означает порядок загрузки). И YAML здесь не имеет смысла, вы не можете добавить YAML в документ HTML.

Рейтинг:1
флаг in

Вам следует просмотреть Добавление таблиц стилей (CSS) и Javascript (JS) в Друпал модуль и Друпал тема документы К сожалению, в одном есть информация, которой нет в другом, но Полагаю вся информация, относящаяся к определению библиотеки, т. е. созданию файла library.yml, относится как к модулям, так и к темам.

Глядя на mytheme.libraries.yml, я вижу «база», «компонент», «макет», «тема» и так далее. Эти обозначения представляют/делают что-либо в упражняться?

Да, они делают вещи. Прежде всего, они изменяют порядок загрузки файлов (сначала загружаются файлы с более низким весом). Это также хороший способ организовать ваш CSS (эти ключи применимы только к CSS, а не к JS) концептуально, чтобы упростить поиск, отладку и исправление любых проблем или внесение изменений.

Из документов:

[основа, макет, компонент, состояние, ключи темы] указывают тип стиля, к которому принадлежит файл CSS.

Вы можете установить веса CSS с 5 различными уровнями стиля:

  • base: сброс/нормализация CSS плюс стилизация элементов HTML. Ключ назначает вес CSS_BASE = -200
  • Макет: макрокомпоновка веб-страницы, включая любые сеточные системы. Ключ назначает вес CSS_LAYOUT = -100
  • компонент: дискретные, многократно используемые элементы пользовательского интерфейса. Ключ назначает вес CSS_КОМПОНЕНТ = 0
  • состояние: стили, связанные с изменениями компонентов на стороне клиента. Ключ назначает вес CSS_STATE = 100
  • тема: чисто визуальный стиль («внешний вид») для компонента. Ключ назначает вес CSS_THEME = 200

Это определяется SMACSS стандарт. Так что здесь, если вы укажете тему это означает, что файл CSS содержит стиль, связанный с темой, который чистый внешний вид. Подробнее здесь. Вы не можете использовать другие клавиши, так как эти вызовет строгие предупреждения.

Эти ключи не обеспечивают никакой условной загрузки файлов.Все они всегда загружаются при включенной библиотеке, ключи изменяют только порядок загрузки отдельных файлов. (Если вы используете агрегацию, все они будут в одном файле, но порядок будет сохранен.) Для условной загрузки файлов вам потребуется создать отдельные библиотеки (вы можете определить несколько библиотек в одном файле library.yml файл), а затем присоединяйте отдельные библиотеки только тогда, когда они вам нужны.

Есть несколько способов прикрепить библиотеку к странице, см. Присоединение библиотеки к страницам раздел документа модуля и темы, упомянутый выше.

blur avatar
флаг bn
Спасибо за информацию. Я хотел бы найти несколько руководств по шаблонам, которые выходят за рамки «сначала установите баррио ...». Я хотел бы перейти к предварительной обработке и условиям. Делайте больше с шаблонами и меньше с модулями.

Ответить или комментировать

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