DFC Bridge на примерах
Используйте эти короткие рецепты, когда вопрос по макету уже понятен. Каждый пример показывает одну проблему, одно исправление и короткую причину. Выберите пример под текущую задачу; читать их по порядку необязательно.
Визуальный экскурс о смысле передачи: вопросы команды, причины решений и настоящие снимки Figma.
1. Страница и ширины
Заголовок раздела «1. Страница и ширины»Проблема: в файле есть несвязанные корни desktop и mobile-final-2.
Используйте:
home [page=home] [route=/] [bp=1440] [view=default]home [page=home] [route=/] [bp=375] [view=default]Одинаковые [page] и [view] связывают подготовленные ширины. [bp] записывает ширину каждого корня.
2. Одно имя на разных ширинах
Заголовок раздела «2. Одно имя на разных ширинах»Проблема: hero-title-mobile выглядит как новый элемент.
Используйте:
hero-titleРазмер и положение могут измениться. Стабильное имя помогает узнать тот же логический элемент.
3. Секция страницы
Заголовок раздела «3. Секция страницы»Используйте [section] для секции, собранной прямо на странице:
product-results [section=product-results] product-grid [collection=products]Экземпляр из библиотеки Page Sections уже имеет исходный компонент. Не повторяйте ключ секции, если локальный фрейм не является её границей.
4. Ссылка или действие
Заголовок раздела «4. Ссылка или действие»Используйте [href] для перехода и [action] для изменения текущего интерфейса:
catalog-link [href=/catalog]filter-button [action=state:filters-open]Не используйте фальшивый href для кнопки и фальшивое действие для обычной ссылки.
5. Кнопка и модальное окно
Заголовок раздела «5. Кнопка и модальное окно»Действие ссылается на стабильный идентификатор модального окна:
contact-button [action=modal:contact-modal]
contact-modal [modal=contact-modal] modal-title close-buttonОдна и та же кнопка из UI Kit может выполнять разные действия в разных местах. Действие задаётся экземпляру на странице, а не общему имени компонента.
6. Осмысленная структура
Заголовок раздела «6. Осмысленная структура»Проблема: соседние слои сгруппированы только потому, что их выбрали вместе.
Используйте:
hero hero-copy hero-title hero-subtitle hero-actions contact-buttonУ каждой обёртки должна быть настоящая задача: содержимое, раскладка, обрезка, фон или область взаимодействия. Подробности — в правилах подготовки макета и правилах обёрток.
7. Реальный контент
Заголовок раздела «7. Реальный контент»Показывайте данные, которые могут изменить раскладку:
product-card product-title product-price product-imageПроверьте короткий, длинный, пустой, загружаемый и ошибочный варианты. Не заменяйте изменяемый контент картинкой готовой композиции.
8. Контент, декор и экспорт
Заголовок раздела «8. Контент, декор и экспорт»Используйте самое короткое понятное правило на точном визуальном слое:
product-imagehero-glow [decor]campaign-illustration [asset][decor] описывает визуальную роль. [asset] означает, что визуал передаётся одним ресурсом. Один слой может использовать оба тега, если верны оба утверждения.
Как пользоваться каталогом
Заголовок раздела «Как пользоваться каталогом»Найдите похожую задачу и примените минимальный подходящий пример. Затем пройдите чеклист дизайнера для выбранной области передачи.
Имя слоя не заменяет описание всего поведения. Решения о данных, реакциях, движении и доступности записывайте в структурированном контракте переноса. Начните с проверяемого файла validator/examples/bridge-contract.valid.json в репозитории. Иллюстративный пример в статье и отдельные фрагменты модулей не являются полной передачей.