Создайте свой первый плагин
В этом руководстве мы шаг за шагом создадим плагин-блок, который можно будет использовать на страницах. Это поможет вам понять базовую структуру и процесс разработки плагинов NocoBase.
Предварительные условия
Прежде чем начать, убедитесь, что NocoBase успешно установлен. Если вы еще не установили его, можете обратиться к следующим руководствам по установке:
После завершения установки вы сможете официально начать свой путь в разработке плагинов.
Шаг 1: Создание основы плагина с помощью CLI
Выполните следующую команду в корневом каталоге репозитория, чтобы быстро сгенерировать пустой плагин:
После успешного выполнения команды в каталоге packages/plugins/@my-project/plugin-hello будут сгенерированы базовые файлы. Структура по умолчанию выглядит так:
После создания вы можете открыть страницу менеджера плагинов в браузере (адрес по умолчанию: http://localhost:13000/admin/settings/plugin-manager), чтобы убедиться, что плагин появился в списке.
Шаг 2: Реализация простого клиентского блока
Далее мы добавим в плагин пользовательскую модель блока, которая будет отображать приветственный текст.
- Создайте новый файл модели блока
client/models/HelloBlockModel.tsx:
- Зарегистрируйте модель блока. Отредактируйте
client/models/index.ts, чтобы экспортировать новую модель для загрузки во время выполнения на фронтенде:
После сохранения кода, если вы используете скрипт для разработки, вы должны увидеть логи горячей перезагрузки в выводе терминала.
Шаг 3: Активация и тестирование плагина
Вы можете включить плагин через командную строку или интерфейс:
-
Командная строка
-
Интерфейс управления: Откройте менеджер плагинов, найдите
@my-project/plugin-helloи нажмите «Активировать».
После активации создайте новую страницу «Modern page (v2)». При добавлении блоков вы увидите «Hello block». Вставьте его на страницу, чтобы увидеть приветственное содержимое, которое вы только что написали.

Предустановка и включение плагина по умолчанию (необязательно)
Выше описан способ вручную включить отдельный плагин. Если вы поддерживаете собственное приложение NocoBase и хотите, чтобы определённые плагины были автоматически готовы к работе после выполнения nocobase install (первоначальная установка) или nocobase upgrade (обновление), можно использовать две переменные среды для управления состоянием плагинов по умолчанию:
APPEND_PRESET_LOCAL_PLUGINS(добавить предустановленные плагины) — добавляет плагин в список предустановленных локальных плагинов; после установки он появится в «Менеджере плагинов», но по умолчанию не будет активирован — потребуется включить его вручнуюAPPEND_PRESET_BUILT_IN_PLUGINS(добавить встроенные плагины) — добавляет плагин в список встроенных плагинов; при установке он активируется автоматически, и как встроенный плагин его нельзя отключить или удалить через «Менеджер плагинов»
Значением обеих переменных является имя пакета плагина (поле name в package.json); несколько плагинов разделяются запятыми. В файле .env конфигурация выглядит следующим образом:
Как правило, для локальной разработки и отладки достаточно команды yarn pm enable, описанной выше. Эти две переменные больше подходят для сценариев «готового к использованию» дистрибутива — например, когда вы упаковываете приложение NocoBase с фиксированным набором плагинов и хотите, чтобы они были доступны сразу после инициализации.
- Плагин должен быть загружен локально и доступен для разрешения в каталоге
node_modules. См. Структура проекта плагина - После настройки переменных необходимо повторно выполнить
nocobase installилиnocobase upgrade, чтобы изменения вступили в силу - Полное описание переменных среды см. в разделе Переменные среды
Шаг 4: Сборка и упаковка
Когда вы будете готовы распространить плагин в другие среды, вам сначала потребуется его собрать и упаковать:
Примечание: Если плагин был создан в репозитории исходного кода, первая сборка вызовет полную проверку типов всего репозитория, что может занять некоторое время. Рекомендуется убедиться, что зависимости установлены, а репозиторий находится в состоянии, пригодном для сборки.
После завершения сборки упакованный файл по умолчанию находится по адресу storage/tar/@my-project/plugin-hello.tar.gz.
Шаг 5: Загрузка в другое приложение NocoBase
Загрузите и распакуйте плагин в каталог ./storage/plugins целевого приложения. Подробности см. в разделе Установка и обновление плагинов.
Связанные ссылки
- Обзор разработки плагинов — микроядерная архитектура NocoBase и жизненный цикл плагина
- Структура проекта плагина — соглашения о структуре каталогов, пути загрузки и приоритеты плагинов
- Обзор серверной разработки — общее введение в серверные плагины и основные концепции
- Обзор клиентской разработки — общее введение в клиентские плагины и основные концепции
- Сборка и упаковка — процесс сборки, упаковки и распространения плагина
- Тестирование — написание тестов для серверных плагинов
- Установка с помощью create-nocobase-app — один из способов установки NocoBase
- Установка из исходного кода Git — установка NocoBase из исходного кода
- Установка и обновление плагинов — загрузка упакованного плагина в другие среды
- Переменные среды — настройка переменных среды для предустановленных и встроенных плагинов

