Plugin
Trong NocoBase, Plugin server (Server Plugin) là cách chính để mở rộng chức năng phía server. Bạn có thể kế thừa lớp cơ sở Plugin được cung cấp bởi @nocobase/server trong file src/server/plugin.ts của thư mục Plugin, sau đó đăng ký event, API, quyền và logic tùy chỉnh khác trong các giai đoạn vòng đời khác nhau.
Lớp Plugin
Cấu trúc cơ bản của một lớp Plugin:
Vòng đời
Các phương thức vòng đời của Plugin được thực thi theo thứ tự sau, mỗi phương thức có thời điểm thực thi và mục đích cụ thể:
Mô tả thứ tự thực thi
Quy trình thực thi điển hình của các phương thức vòng đời:
- Giai đoạn khởi tạo tĩnh:
staticImport() - Giai đoạn khởi động ứng dụng:
afterAdd()→beforeLoad()→load() - Giai đoạn kích hoạt Plugin lần đầu:
afterAdd()→beforeLoad()→load()→install() - Giai đoạn kích hoạt Plugin lần sau:
afterAdd()→beforeLoad()→load() - Giai đoạn vô hiệu hóa Plugin: Khi vô hiệu hóa Plugin thực thi
afterDisable() - Giai đoạn xóa Plugin: Khi xóa Plugin thực thi
remove()
app và các thành viên liên quan
Trong phát triển Plugin, qua this.app bạn có thể truy cập các API mà instance ứng dụng cung cấp — đây là entry chính để Plugin mở rộng chức năng. Đối tượng app chứa các module chức năng của hệ thống, bạn có thể sử dụng chúng trong các phương thức vòng đời của Plugin.
Danh sách thành viên app
Cách dùng chi tiết của từng module, vui lòng tham khảo chương tài liệu tương ứng.
Liên kết liên quan
- Tổng quan phát triển server — Tổng quan và navigation các module server
- Collections — Định nghĩa hoặc mở rộng cấu trúc bảng dữ liệu bằng code
- Database — CRUD, Repository, transaction và sự kiện database
- Migration — Script migration dữ liệu khi nâng cấp Plugin
- Event — Lắng nghe và xử lý sự kiện cấp ứng dụng và database
- ResourceManager — Đăng ký REST API và Action tùy chỉnh
- Viết Plugin đầu tiên — Tạo Plugin hoàn chỉnh từ đầu
- Logger — Ghi log hệ thống
- ACL — Định nghĩa quyền và chính sách truy cập
- Cache — Quản lý cache cấp hệ thống
- CronJobManager — Đăng ký và quản lý tác vụ định kỳ
- I18n — Dịch đa ngôn ngữ
- Command — Đăng ký lệnh CLI tùy chỉnh
- DataSourceManager — Quản lý nhiều nguồn dữ liệu

