Event
Server NocoBase memicu event yang sesuai pada siklus hidup aplikasi, siklus hidup plugin, serta operasi database. Anda dapat mengimplementasikan logika ekstensi, operasi otomatisasi, atau perilaku kustom dengan mendengarkan event-event ini.
Sistem event NocoBase utamanya dibagi menjadi dua level:
app.on()— Event Level Aplikasi: Mendengarkan event siklus hidup aplikasi, seperti startup, instalasi, aktivasi plugin, dll.db.on()— Event Level Database: Mendengarkan event operasi pada level model data, seperti membuat, memperbarui, menghapus record, dll.
Keduanya diwarisi dari EventEmitter Node.js, mendukung penggunaan interface standar .on(), .off(), .emit(). NocoBase juga memperluas emitAsync, untuk memicu event secara asinkron dan menunggu semua listener selesai dieksekusi.
Lokasi Registrasi Event Listener
Event listener biasanya didaftarkan di method beforeLoad() plugin, sehingga dapat dipastikan event sudah siap pada tahap loading plugin, dan logika berikutnya dapat merespons dengan benar.
Listen Event Aplikasi app.on()
Event aplikasi digunakan untuk menangkap perubahan siklus hidup aplikasi NocoBase dan plugin, cocok untuk logika inisialisasi, registrasi resource, atau deteksi dependensi, dll.
Tipe Event Umum
Misalnya listen event startup aplikasi:
Misalnya listen event loading plugin:
Listen Event Database db.on()
Event database digunakan untuk menangkap berbagai perubahan data pada level model, cocok untuk audit, sinkronisasi, auto-fill, dan operasi lainnya.
Tipe Event Umum
Misalnya listen event setelah data dibuat:
Misalnya listen event sebelum data diperbarui:
Tautan Terkait
- Plugin — Mendaftarkan event listener dalam method siklus hidup plugin
- Database Operasi Database — Source trigger event level database dan API operasi data
- Collections Tabel Data — Definisi tabel data dan hubungan model dalam event database
- Middleware — Kolaborasi middleware dan event dalam pemrosesan request
- Ikhtisar Pengembangan Server — Peran sistem event dalam arsitektur server

