logologo
Початок
Посібник
Розробка
Плагіни
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Початок
Посібник
Розробка
Плагіни
API
logologo

Швидкий старт

Огляд розробки плагінів
Написання першого плагіна
Структура каталогу проєкту

Серверна розробка

Огляд
Плагін (Plugin)
Колекції (таблиці даних)
Операції з базою даних (Database)
Керування джерелами даних (DataSourceManager)
Керування ресурсами (ResourceManager)
Контроль доступу (ACL)
Проміжне ПЗ (Middleware)
Кеш (Cache)
Подія (Event)
Контекст запиту (Context)
Скрипт оновлення (Migration)
Логи (Logger)
Інтернаціоналізація (I18n)
Командний рядок (Command)
Керування завданнями за розкладом (CronJobManager)
Тестування (Test)

Клієнтська розробка

Огляд
Плагін (Plugin)
Контекст (Context)
Маршрутизатор (Router)
Контроль доступу (ACL)
Керування джерелами даних (DataSourceManager)
Ресурс (Resource)
Запит (Request)
Стилі та теми (Styles & Themes)
Логи (Logger)
Інтернаціоналізація (I18n)
Тестування (Test)

Інше

Посібник з оновлення плагінів
Список мов
Керування залежностями
Збірка
Next PageОгляд розробки плагінів
Повідомлення про переклад ШІ

Ця документація була автоматично перекладена штучним інтелектом.

#Огляд розробки плагінів

NocoBase використовує мікроядерну архітектуру, де ядро відповідає лише за планування життєвого циклу плагінів, керування залежностями та інкапсуляцію базових можливостей. Усі бізнес-функції надаються у вигляді плагінів. Отже, розуміння організаційної структури, життєвого циклу та способів керування плагінами є першим кроком до налаштування NocoBase.

#Ключові концепції

  • Підключай та працюй (Plug and Play): Ви можете встановлювати, вмикати або вимикати плагіни за потреби, гнучко комбінуючи бізнес-функції без зміни коду.
  • Повностекова інтеграція (Full-stack Integration): Плагіни зазвичай містять як серверні, так і клієнтські реалізації, що забезпечує узгодженість між логікою даних та взаємодією з інтерфейсом.

#Базова структура плагіна

Кожен плагін є незалежним npm-пакетом і зазвичай має таку структуру каталогів:

plugin-hello/
├─ package.json          # Назва плагіна, залежності та метаінформація плагіна NocoBase
├─ client.js             # Зібраний фронтенд-файл для завантаження під час виконання
├─ server.js             # Зібраний серверний файл для завантаження під час виконання
├─ src/
│  ├─ client/            # Вихідний код клієнтської частини, може реєструвати блоки, дії, поля тощо.
│  └─ server/            # Вихідний код серверної частини, може реєструвати ресурси, події, команди тощо.

#Угоди про каталоги та порядок завантаження

NocoBase за замовчуванням сканує такі каталоги для завантаження плагінів:

my-nocobase-app/
├── packages/
│   └── plugins/          # Плагіни, що розробляються (найвищий пріоритет)
└── storage/
    └── plugins/          # Зібрані плагіни, наприклад, завантажені або опубліковані
  • packages/plugins: Каталог для локальної розробки плагінів, що підтримує компіляцію та налагодження в реальному часі.
  • storage/plugins: Зберігає зібрані плагіни, такі як комерційні версії або сторонні плагіни.

#Життєвий цикл та стани плагіна

Плагін зазвичай проходить такі етапи:

  1. Створення (create): Створення шаблону плагіна за допомогою CLI.
  2. Завантаження (pull): Завантаження пакета плагіна локально, але він ще не записаний у базу даних.
  3. Увімкнення (enable): При першому увімкненні виконується "реєстрація + ініціалізація"; подальші увімкнення лише завантажують логіку.
  4. Вимкнення (disable): Зупинка роботи плагіна.
  5. Видалення (remove): Повне видалення плагіна із системи.
TIP
  • pull лише завантажує пакет плагіна; фактичний процес встановлення запускається при першому enable.
  • Якщо плагін лише завантажено (pull), але не увімкнено, він не буде завантажений.

#Приклади команд CLI

# 1. Створення каркаса плагіна
yarn pm create @my-project/plugin-hello

# 2. Завантаження пакета плагіна (завантаження або посилання)
yarn pm pull @my-project/plugin-hello

# 3. Увімкнення плагіна (при першому увімкненні автоматично встановлюється)
yarn pm enable @my-project/plugin-hello

# 4. Вимкнення плагіна
yarn pm disable @my-project/plugin-hello

# 5. Видалення плагіна
yarn pm remove @my-project/plugin-hello

#Інтерфейс керування плагінами

Відкрийте менеджер плагінів у браузері, щоб інтуїтивно переглядати та керувати плагінами:

Адреса за замовчуванням: http://localhost:13000/admin/settings/plugin-manager

Менеджер плагінів