Diese Dokumentation wurde automatisch von KI übersetzt.
Ereignisse
Der NocoBase-Server löst während des Anwendungslebenszyklus, des Plugin-Lebenszyklus und bei Datenbankoperationen entsprechende Ereignisse aus. Plugin-Entwickler können diese Ereignisse abonnieren, um Erweiterungslogik, automatisierte Abläufe oder benutzerdefinierte Verhaltensweisen zu implementieren.
Das Ereignissystem von NocoBase ist hauptsächlich in zwei Ebenen unterteilt:
app.on()- Ereignisse auf Anwendungsebene: Abonnieren Sie Lebenszyklusereignisse der Anwendung, wie zum Beispiel Start, Installation oder das Aktivieren von Plugins.db.on()- Ereignisse auf Datenbankebene: Abonnieren Sie Vorgangsereignisse auf Datenmodellebene, wie zum Beispiel das Erstellen, Aktualisieren oder Löschen von Datensätzen.
Beide erben von Node.js' EventEmitter und unterstützen die Standard-Schnittstellen .on(), .off() und .emit(). NocoBase erweitert die Unterstützung zudem um emitAsync, um Ereignisse asynchron auszulösen und darauf zu warten, dass alle Listener ihre Ausführung abgeschlossen haben.
Wo Sie Ereignis-Listener registrieren
Ereignis-Listener sollten in der Regel in der beforeLoad()-Methode des Plugins registriert werden. Dies stellt sicher, dass die Ereignisse bereits während der Ladephase des Plugins bereitstehen und die nachfolgende Logik korrekt darauf reagieren kann.
Anwendungereignisse abonnieren mit app.on()
Anwendungereignisse dienen dazu, Änderungen im Lebenszyklus der NocoBase-Anwendung und ihrer Plugins zu erfassen. Sie eignen sich gut für Initialisierungslogik, die Registrierung von Ressourcen oder die Erkennung von Plugin-Abhängigkeiten.
Häufige Ereignistypen
Beispiel: Anwendung-Start-Ereignis abonnieren
Beispiel: Plugin-Ladeereignis abonnieren
Datenbankereignisse abonnieren mit db.on()
Datenbankereignisse können verschiedene Datenänderungen auf Modellebene erfassen. Sie eignen sich gut für Audits, Synchronisierungen, das automatische Ausfüllen von Feldern und andere Operationen.
Häufige Ereignistypen
Beispiel: Ereignis nach dem Erstellen von Daten abonnieren
Beispiel: Ereignis vor dem Aktualisieren von Daten abonnieren

