Skip to main content

Базовый рабочий процесс

Назначение и область применения

Этот документ описывает типичные рабочие процессы и паттерны разработки, используемые при создании пользовательских интерфейсов с помощью @ui8kit/core. Он охватывает распространенные сценарии, с которыми сталкиваются разработчики при компоновке компонентов, применении стилизации через систему вариантов и построении стандартных паттернов UI, таких как карточки, формы и макеты. Для продвинутых сценариев, где стандартных компонентов недостаточно (например, создание пользовательских компонентов форм), см. Продвинутый рабочий процесс. Для общих рекомендаций и советов по производительности см. Лучшие практики. Источники: .devin/wiki.json181-188 src/components/README.md1-259

Рабочий процесс выбора компонента

Первый шаг в любом рабочем процессе разработки — это выбор подходящего компонента для вашего случая использования. Библиотека следует трехуровневой иерархии, где каждый уровень служит определенным целям.
Матрица принятия решений: Источники: README.md62-103 src/components/README.md9-19 README.md363-387

Рабочий процесс базовой стилизации

Все компоненты принимают пропы вариантов вместо строк className. Этот рабочий процесс показывает, как применять стилизацию через систему вариантов.

Пошагово: Стилизация компонента

Шаг 1: Применение вариантов отступов
Доступные значения отступов: none, xs, sm, md, lg, xl, 2xl, auto Шаг 2: Применение вариантов цветов
Шаг 3: Применение визуальных эффектов
Шаг 4: Применение вариантов макета

Справочник пропов вариантов

Источники: README.md170-217 src/components/README.md206-222

Рабочие процессы паттернов макетов

Вертикальная укладка с Stack

Наиболее распространенный паттерн макета — это вертикальная укладка элементов.
Ключевые пропы Stack:
  • gap: Пространство между дочерними элементами (xs, sm, md, lg, xl, 2xl)
  • align: Выравнивание по поперечной оси (start, center, end, stretch)
  • justify: Выравнивание по главной оси (start, center, end, between, around)
Источники: src/components/README.md52-64

Горизонтальный макет с Group

Для горизонтальных расположений используйте Group.
Источники: src/components/README.md66-78

Сеточный макет с Grid

Для многоколоночных макетов используйте Grid с адаптивными пресетами.
Значения пресета cols:
  • "1-2-3": 1 колонка на мобильных, 2 на планшетах, 3 на десктопе
  • "2": 2 колонки на всех разрешениях
  • Кастомные: Используйте стандартные пропы Grid
Источники: src/components/README.md80-92 README.md90-103

Адаптивный контейнер

Используйте Container для центрированных макетов с максимальной шириной.
Размеры контейнера:
  • xs: 448px
  • sm: 640px
  • md: 768px
  • lg: 1024px
  • xl: 1280px
Источники: src/components/README.md39-50

Паттерны UI-компонентов

Работа с карточками

Card — это составной компонент с семантическими подкомпонентами.
Пошагово: Построение карточки
Источники: src/components/README.md96-117 README.md121-145

Работа с кнопками

Button поддерживает варианты, размеры, состояния загрузки и секции с иконками.
Варианты кнопки:
  • default: Стандартная кнопка
  • primary: Основное действие
  • secondary: Второстепенное действие
  • destructive: Опасные действия
  • outline: Стиль с обводкой
  • ghost: Минималистичный стиль
  • link: Стиль ссылки
Источники: src/components/README.md119-133

Работа с типографикой

Используйте Title для заголовков и Text для основного контента.
Сопоставление Title order:
  • order={1}: тег <h1>
  • order={2}: тег <h2>
  • order={3}: тег <h3>
  • (продолжается до order={6})
Источники: src/components/README.md150-177

Работа с бейджами

Используйте Badge для индикаторов статуса и меток.
Варианты бейджа:
  • default: Стандартный бейдж
  • success: Зеленый/позитивный
  • warning: Желтый/предупреждение
  • error: Красный/негативный
  • outline: Стиль с обводкой
Источники: src/components/README.md135-148

Рабочий процесс семантического HTML

Используйте Block с пропом component для рендера семантических HTML5-элементов.
Распространенные семантические элементы:
  • section: Тематическая группировка
  • article: Самодостаточный контент
  • nav: Навигационные ссылки
  • header: Вводный контент
  • footer: Контент подвала
  • aside: Контент боковой панели
  • main: Основная область контента
Источники: src/components/README.md23-37 README.md14

Распространенные сценарии разработки

Сценарий 1: Построение карточки функции

Источники: README.md310-339 src/components/README.md96-117

Сценарий 2: Построение макета формы

Когда специфичные для форм компоненты недоступны, компонуйте макеты, используя Block и Box.
Примечание: Для продвинутых рабочих процессов с пользовательскими компонентами форм см. Продвинутый рабочий процесс. Источники: README.md310-339 src/components/README.md315-328

Сценарий 3: Построение секции дашборда

Источники: README.md155-168 src/components/README.md80-92

Сценарий 4: Адаптивная навигация

Источники: src/components/README.md66-78 src/components/README.md39-50

Таргетирование атрибутов данных

Все UI-компоненты включают атрибуты data-class для семантического таргетирования в CSS и тестах.
Пример таргетирования в CSS:
Пример селектора в тестах:
Источники: src/components/README.md223-236

Итоговая таблица рабочих процессов

Источники: src/components/README.md1-259 README.md36-217