Diese Dokumentation wurde automatisch von KI übersetzt.
In NocoBase ist das Client-Plugin die wichtigste Methode, um die Frontend-Funktionalität zu erweitern und anzupassen. Indem Sie die von @nocobase/client bereitgestellte Plugin-Basisklasse erweitern, können Entwickler Logik registrieren, Seitenkomponenten hinzufügen, Menüs erweitern oder Drittanbieter-Funktionen in verschiedenen Lebenszyklusphasen integrieren.
Eine grundlegende Struktur für ein Client-Plugin sieht wie folgt aus:
Jedes Plugin durchläuft nacheinander den folgenden Lebenszyklus, wenn der Browser aktualisiert oder die Anwendung initialisiert wird:
| Lebenszyklus-Methode | Ausführungszeitpunkt | Beschreibung |
|---|---|---|
| afterAdd() | Wird sofort ausgeführt, nachdem das Plugin zum Plugin-Manager hinzugefügt wurde | Zu diesem Zeitpunkt ist die Plugin-Instanz bereits erstellt, aber nicht alle Plugins sind vollständig initialisiert. Geeignet für eine leichte Initialisierung, z. B. das Lesen von Konfigurationen oder das Binden grundlegender Ereignisse. |
| beforeLoad() | Wird vor der load()-Methode aller Plugins ausgeführt | Sie können auf alle aktivierten Plugin-Instanzen (this.app.pm.get()) zugreifen. Geeignet für Vorbereitungslogik, die von anderen Plugins abhängt. |
| load() | Wird beim Laden des Plugins ausgeführt | Diese Methode wird ausgeführt, nachdem die beforeLoad()-Methoden aller Plugins abgeschlossen sind. Geeignet für die Registrierung von Frontend-Routen, UI-Komponenten und anderer Kernlogik. |
Bei jeder Browseraktualisierung wird die Reihenfolge afterAdd() → beforeLoad() → load() ausgeführt.
Ab NocoBase 2.0 konzentrieren sich die clientseitigen Erweiterungs-APIs hauptsächlich in der FlowEngine. Innerhalb der Plugin-Klasse können Sie die Engine-Instanz über this.engine abrufen.
Weitere Informationen finden Sie unter: