Aktions-Erweiterung
In NocoBase ist eine Aktion (Action) ein Button innerhalb eines Blocks, der eine Geschäftslogik auslöst — z. B. „Neu", „Bearbeiten", „Löschen" usw. Durch Erweitern der ActionModel-Basisklasse können Sie benutzerdefinierte Aktionsbuttons hinzufügen.
Aktionsszenarien
Jede Aktion muss das Szenario deklarieren, in dem sie erscheint, indem sie über die Eigenschaft static scene angegeben wird:
Beispiele
Aktion auf Datentabellen-Ebene
Wirkt auf die gesamte Datentabelle und erscheint in der Aktionsleiste oben im Block:
Aktion auf Datensatz-Ebene
Wirkt auf einen einzelnen Datensatz und erscheint in der Aktionsspalte jeder Tabellenzeile:
Beide Szenarien anwendbar
Wenn die Aktion nicht zwischen Szenarien unterscheidet, verwenden Sie ActionSceneEnum.both:
Die Struktur der drei Schreibweisen ist identisch — der Unterschied liegt nur im Wert von static scene und im Button-Text in defaultProps.
Aktion registrieren
Im load() des Plugins über registerModelLoaders per Lazy Loading registrieren:
Nach der Registrierung können Sie unter „Aktion konfigurieren" des Blocks Ihre benutzerdefinierten Aktionsbuttons hinzufügen.
Vollständiger Quellcode
- @nocobase-example/plugin-simple-action — Vollständiges Beispiel der drei Aktionsszenarien
Verwandte Links
- Plugin-Praxis: Einen benutzerdefinierten Aktionsbutton erstellen — Drei Szenario-Buttons von Grund auf erstellen
- Plugin-Praxis: Ein Frontend-Backend-Datenmanagement-Plugin erstellen — Praktischer Einsatz von benutzerdefinierten Aktionen + ctx.viewer.dialog in einem vollständigen Plugin
- FlowEngine-Übersicht — Grundlegende Verwendung von FlowModel
- Block-Erweiterung — Benutzerdefinierte Blöcke
- Feld-Erweiterung — Benutzerdefinierte Feld-Components
- FlowDefinition — Vollständige Parameter und Event-Typen für registerFlow
- Vollständige FlowEngine-Dokumentation — Vollständige Referenz

