Организация компонентов и вариантов

Все уровни (атомы, молекулы, организмы) мы оборачиваем в компоненты (обозначены в Figma значком ❖).

Создание и наименование компонентов

Главное преимущество работы с компонентами — возможность вносить изменения во все экземпляры проекта сразу, изменяя только мастер-компонент. Это ускоряет рабочий процесс и делает дизайн-систему проекта более согласованной, упрощает процесс ее поддержки и сотрудничества с другими дизайнерами.

При создании нового компонента, не забываем присвоить ему соответствующее имя для более удобного и быстрого поиска в базе компонентов в будущем. Лучше всего называть компоненты в соответствии с разрешением под которое они делаются, названием сущности и ее параметром, например, 1440/Button/Small. Обязательно расписывать через слэш, так как фигма распознает это как папки.

В приведенном примере будет работать следующим образом: в папке 1440 будут лежать все вложенные папки с компонентами под это разрешение, а в папке Button — все возможные кнопки. Это ускорит дальнейший поиск компонентов. 


all assets

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

Самый простой компонент — кнопки и иконки (атом). Важно помнить, что ее вид не должен меняться при переходе от экрана к экрану.

button component example

Компонент кнопки

Более сложные компоненты — (молекулы и организмы) например, футер, хедер, модальные окна, формы обратной связи.

Сложный компонент можно наделить различными свойствами в зависимости от задач:

  • Слои: скрыть или показать.
  • Замена экземпляра: заменить один элемент другим.
  • Изменение текстовых строк: указать, какие текстовые строки можно редактировать.


Типы свойств компонентов

Булевы свойства: позволяют включать или отключать определенные функции или элементы.

Свойства обмена экземплярами: дают возможность замены одного экземпляра компонента на другой.

Свойства текста: позволяют изменять текстовые элементы внутри компонента.

Свойства варианта: используются для переключения между различными вариантами компонента.

После добавления они будут отображаться на правой панели с настройками компонента.

Использование свойств компонентов, особенно булевых свойств, помогает значительно уменьшить размер файла библиотеки, оптимизируя работу с макетами.

Часовое видео про супер-компоненты →

Варианты компонентов

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

button variants

Пример вариантов кнопок

Почему это удобно? Вариантов может быть столько, сколько требуется для закрытия стоящих перед дизайнеров задач. Это могут быть как состояния компонентов, так и более детальные настройки каждого из них.

Структурирование вариантов

Каждый вариант обладает набором определенных характеристик и свойств. Данные параметры присваиваются в зависимости от решаемой задачи. Базовые характеристики это Type, State, Size, Breakpoint.

Некоторые состояния можно вывести в отдельный переключатель с настройками True и False. Например, это подходит для быстрого включения или отключения иконки в кнопке (в том случае, если она всегда находится в определенном месте, а не нескольких)

variants dropdown

Два свойства варианта с дропдаунами выбора

Наименование вариантов

Важно учитывать, что в вариантах мастер-компонента нужно правильно подписывать элементы в списке слоев. При использовании одинаковых наименований у разных вариантов, могут возникнуть ошибки, из-за которых компонент не сможет работат

variant naming error

Ошибка в наименовании свойств вариантов

Вложенность компонентов

После того как мы разобрались с понятием, поведением и возможностями вариантов компонентов, можем смело переходить к работе с вложенными или атомарными компонентами. Они представляют собой компонент, частично или полностью собранный из других компонентов. Такая конструкция упрощает и ускоряет проектирование.

Самый простой пример атомарного компонента — это список с буллитами, где каждая строка — это экземпляр другого компонента. Если нужно изменить вид буллитов, достаточно внести изменения в мастер-компонент строки, а не редактировать каждую строку в списке по отдельности.

atomic component example

Пример атомарного компонента, списка с буллитами

Есть и более сложные примеры создания молекул и организмов. Всех их объединяет одно простое правило: создаем сложное из более простого. Все, что в будущем может претерпеть изменения, лучше разбивать на маленькие компоненты, а из них собирать более сложные.

complex component

Компонент карточки вакансий. Собран из других маленьких компонетов.

Также слоям в компонентах можно задавать дополнительные характеристики.

specification for layouts

Дополнительные характеристики в слоях

Читайте также:

Как передаём: общее

читать

Анимации и раскадровки

читать

Мудборд

читать

Макетные сетки

читать