Skip to main content

Руководство разработчика

Это руководство предоставляет практические рабочие процессы для разработчиков, работающих с @ui8kit/core. Оно охватывает стратегии выбора компонентов, паттерны использования системы вариантов, навигацию по архитектурным слоям и подходы к интеграции. Эта страница служит отправной точкой для понимания эффективного использования библиотеки в различных сценариях разработки. Для подробных пошаговых примеров см. Базовый рабочий процесс. Для обработки крайних случаев и пользовательских реализаций см. Продвинутый рабочий процесс. Для общих рекомендаций см. Лучшие практики. Для настройки темы см. Темная тема.

Обзор рабочего процесса разработки

Библиотека поддерживает три основных подхода к разработке на основе архитектурных слоев:

Модель разработки на основе слоев

Источники: README.md64-169 .devin/wiki.json4-5

Руководство по выбору компонентов

Когда использовать каждый слой

Источники: README.md80-169 .devin/wiki.json7-13

Применение системы вариантов

Поток вариантов в разработке

Источники: README.md170-217 .devin/wiki.json19-21

Общие паттерны разработки

Паттерн 1: Прямое использование примитивов

Для базовых потребностей в макете используйте базовые примитивы с вариантами:
Когда использовать: Пользовательские макеты, простые обертки, структуры форм. Файлы компонентов: src/core/ui/Box.tsx src/core/ui/Stack.tsx

Паттерн 2: Использование составных компонентов

Для предварительно стилизованных UI-элементов используйте компоненты слоя 2:
Когда использовать: Стандартные UI-паттерны, согласованная стилизация в приложении. Файлы компонентов: src/components/ui/Card.tsx src/components/ui/Button.tsx

Паттерн 3: Использование шаблонов макетов

Для структуры приложения используйте макеты слоя 3:
Когда использовать: Приложения панели управления, админ-панели, сложные многосекционные страницы. Файлы компонентов: src/layouts/DashLayout.tsx src/components/ui/Container.tsx

Паттерн 4: Проброс пропсов с вариантами

Составные компоненты наследуют пропсы вариантов от примитивов:
Когда использовать: Требуется дополнительная стилизация помимо стандартных настроек компонента. Файлы компонентов: src/components/ui/Button.tsx src/core/ui/Box.tsx

Паттерн 5: Хуки контента в макетах

Макеты поддерживают динамическую инъекцию контента:
Когда использовать: Гибкие секции контента, динамические макеты. Файлы компонентов: src/layouts/LayoutBlock.tsx Источники: README.md36-60 README.md278-338

Подходы к интеграции

Выбор метода установки

Источники: README.md252-276 .devin/wiki.json15-17 src/registry.json

Настройка среды разработки

Необходимые зависимости

Источники: package.json README.md22-34

Конфигурация Tailwind

Настройте Tailwind для обработки классов библиотеки:
Импортируйте белый список для конфигурации safelist:
Файлы конфигурации: src/lib/core-classes.json Источники: README.md29-34 src/lib/core-classes.json

Жизненный цикл компонента в разработке

От выбора до рендеринга

Источники: README.md422-440 .devin/wiki.json4-5

Работа с атрибутами Data-Class

Все компоненты используют атрибуты data-class для согласованного таргетинга DOM:

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

Использование в тестировании/автоматизации

Файлы компонентов: src/components/ui/Card.tsx src/components/ui/Button.tsx Источники: .devin/wiki.json11-13

Использование паттерна ForwardRef

Компоненты используют forwardRef для доступа к ref базовых DOM-элементов:

Доступ к Ref в разработке

Когда использовать refs: Управление полями формы, контроль прокрутки, управление фокусом, измерения DOM. Файлы компонентов: src/core/ui/Box.tsx src/core/ui/Block.tsx src/components/ui/Button.tsx Источники: README.md11-19

Безопасность типов в разработке

Интеграция с TypeScript

Все компоненты предоставляют полные определения типов:
Файлы определений типов: Генерируются в dist/index.d.ts из компиляции TypeScript. Источники: README.md12 package.json

Следующие шаги

Для подробных рабочих процессов разработки: Для архитектурных деталей см. Архитектура. Для полной документации API см. Справочник API. Источники: .devin/wiki.json170-219