Plugin
Di NocoBase, Plugin Client adalah cara utama untuk memperluas dan menyesuaikan fungsi front-end. Anda dapat extends class dasar Plugin yang disediakan oleh @nocobase/client-v2 di src/client-v2/plugin.tsx direktori plugin Anda, kemudian mendaftarkan route, model, dan resource lainnya dalam siklus hidup load(), dll.
Sebagian besar waktu Anda hanya perlu peduli pada load() — biasanya logika inti didaftarkan pada tahap load().
Sebelum mengembangkan plugin client, harap pastikan Anda telah membaca bab Menulis Plugin Pertama, dan telah menggenerate struktur direktori dan file plugin dasar.
Struktur Dasar
Siklus Hidup
Setiap kali browser di-refresh atau aplikasi diinisialisasi, plugin akan mengeksekusi afterAdd() → beforeLoad() → load() secara berurutan:
Biasanya, mengembangkan plugin client cukup menulis load() saja.
Apa yang Dilakukan di load()
load() adalah entry point inti untuk mendaftarkan fungsi plugin. Operasi umum:
Mendaftarkan Route Halaman:
Untuk penggunaan detail lihat Router.
Mendaftarkan FlowModel:
registerModelLoaders menggunakan loading sesuai kebutuhan (dynamic import), modul akan dimuat hanya saat model digunakan pertama kali, ini adalah cara registrasi yang direkomendasikan. Untuk penggunaan detail lihat FlowEngine.
Property Umum Plugin
Dalam class plugin, property berikut dapat langsung diakses melalui this:
Jika perlu mengakses lebih banyak kapabilitas NocoBase (seperti api, t(i18n), logger), dapat diperoleh melalui this.context:
Untuk lebih banyak kapabilitas konteks lihat Context.
Tautan Terkait
- Router — Mendaftarkan route halaman dan halaman pengaturan plugin
- Pengembangan Component — Cara menulis Component React yang di-mount oleh route
- Context — Menggunakan kapabilitas bawaan NocoBase melalui konteks
- FlowEngine — Mendaftarkan Block, Field, Action, dan Component konfigurasi visual lainnya
- Menulis Plugin Pertama — Membuat plugin dari nol

