Router
In NocoBase registrieren Plugins ihre Seiten über Routen. Es gibt zwei gängige Ansätze:
this.router.add()– Registriert reguläre Seitenroutenthis.pluginSettingsManager.addMenuItem()+addPageTabItem()– Registriert Plugin-Einstellungsseiten
Die Registrierung von Routen erfolgt üblicherweise in der load()-Methode des Plugins. Siehe Plugin für Details.
Bei NocoBase-v2-Plugins erhalten registrierte Routen standardmäßig das Präfix /v. Beim Aufruf der Routen müssen Sie dieses Präfix angeben.
Standardrouten
NocoBase hat die folgenden Standardrouten registriert:
Seitenrouten
Registrieren Sie Seitenrouten über this.router.add(). Für Seitenkomponenten sollte componentLoader zum Lazy Loading verwendet werden, damit der Seitencode erst geladen wird, wenn die Seite tatsächlich aufgerufen wird.
Seitendateien müssen die Komponente per export default exportieren.
Registrierung in der load()-Methode des Plugins:
Das erste Argument von router.add() ist der Routenname, der die Punktnotation . unterstützt, um Eltern-Kind-Beziehungen auszudrücken. Beispielsweise steht root.home für eine untergeordnete Route von root.
In Komponenten können Sie über ctx.router.navigate('/hello') zu einer Route navigieren.
Weitere Details finden Sie im Abschnitt zum Routing in Component.
Verschachtelte Routen
Verschachtelung wird über die Punktnotation umgesetzt. Übergeordnete Routen verwenden <Outlet />, um den Inhalt der untergeordneten Routen zu rendern:
Dynamische Parameter
Routenpfade unterstützen dynamische Parameter:
In Komponenten können Sie dynamische Parameter über ctx.route.params abrufen:
Weitere Details finden Sie im Abschnitt zum Routing in Component.
componentLoader vs. element
componentLoader(empfohlen): Lazy Loading, geeignet für Seitenkomponenten. Seitendateien benötigenexport default.element: Übergibt JSX direkt, geeignet für Layout-Komponenten oder sehr leichtgewichtige Inline-Seiten.
Wenn die Seite selbst umfangreiche Abhängigkeiten hat, sollte componentLoader bevorzugt werden.
Plugin-Einstellungsseiten
Registrieren Sie Plugin-Einstellungsseiten über this.pluginSettingsManager. Die Registrierung erfolgt in zwei Schritten – verwenden Sie zuerst addMenuItem(), um den Menüeintrag zu registrieren, und dann addPageTabItem(), um die eigentliche Seite zu registrieren. Einstellungsseiten erscheinen im Menü „Plugin-Einstellungen" von NocoBase.

Nach der Registrierung lautet der Aufrufpfad /v/admin/settings/hello. Wenn unter dem Menü nur eine Seite vorhanden ist, wird die obere Tab-Leiste automatisch ausgeblendet.
Einstellungsseite mit mehreren Tabs
Wenn die Einstellungsseite mehrere Unterseiten benötigt, registrieren Sie mehrere addPageTabItem-Aufrufe mit demselben menuKey – oben erscheint dann automatisch eine Tab-Leiste:
addMenuItem-Parameter
addPageTabItem-Parameter
Verwandte Links
- Plugin – Routen werden in
load()registriert - Component – Wie man die von Routen eingebundenen Seitenkomponenten schreibt
- Plugin-Beispiel: Eine Einstellungsseite erstellen – Vollständiges Beispiel für eine Einstellungsseite

