Schnellstart: Eine orchestrierbare Schaltflächenkomponente erstellen
In React rendern wir eine Schaltflächenkomponente normalerweise so:
Obwohl der obige Code einfach ist, handelt es sich um eine statische Komponente, die den Anforderungen einer No-Code-Plattform an Konfigurierbarkeit und Orchestrierungsfähigkeiten nicht gerecht wird.
In NocoBase's FlowEngine können Sie mithilfe von FlowModel + FlowDefinition schnell Komponenten erstellen, die Konfiguration und Ereignissteuerung unterstützen, und so leistungsfähigere No-Code-Funktionen realisieren.
Schritt 1: Die Komponente mit FlowModel rendern
🧠 Schlüsselkonzepte
FlowModelist das zentrale Komponentenmodell in FlowEngine, das die Komponentenlogik, das Rendering und die Konfigurationsmöglichkeiten kapselt.- Jede UI-Komponente kann über
FlowModelinstanziiert und einheitlich verwaltet werden.
📌 Implementierungsschritte
1. Eine benutzerdefinierte Modellklasse erstellen
2. Eine Modellinstanz erstellen
3. Mit <FlowModelRenderer /> rendern
Diese Dokumentation wurde automatisch von KI übersetzt.
Schritt 2: PropsFlow hinzufügen, um Schaltflächeneigenschaften konfigurierbar zu machen
💡 Warum PropsFlow verwenden?
Die Verwendung von Flow anstelle statischer Props ermöglicht Folgendes für Eigenschaften:
- Dynamische Konfiguration
- Visuelle Bearbeitung
- Zustands-Wiedergabe und Persistenz
🛠 Wichtige Anpassungen
1. Den Flow für Schaltflächeneigenschaften definieren
2. stepParams anstelle von statischen props verwenden
✅ Die Verwendung von
stepParamsist der von FlowEngine empfohlene Ansatz, da er Probleme mit nicht serialisierbaren Daten (wie React-Komponenten) vermeidet.
3. Die Eigenschaften-Konfigurationsoberfläche aktivieren
Schritt 3: Schaltflächen-Ereignis-Flow (EventFlow) unterstützen
🎯 Szenario: Nach dem Klicken der Schaltfläche ein Bestätigungsdialogfeld anzeigen
1. Auf das onClick-Ereignis lauschen
onClick auf nicht-intrusive Weise hinzufügen
2. Den Ereignis-Flow definieren
Zusätzliche Hinweise:
- Ein EventFlow ermöglicht es, das Verhalten der Schaltfläche flexibel über einen Flow zu konfigurieren, z. B. das Anzeigen von Dialogfeldern, Nachrichten, das Ausführen von API-Aufrufen usw.
- Sie können für verschiedene Ereignisse (wie
onClick,onMouseEnterusw.) unterschiedliche EventFlows registrieren, um komplexe Geschäftsanforderungen zu erfüllen.
3. Ereignis-Flow-Parameter konfigurieren
Beim Erstellen des Modells können Sie die Standardparameter für den Ereignis-Flow über stepParams konfigurieren:
Modellvergleich: ReactComponent vs. FlowModel
Flow ändert nichts an der Implementierung von Komponenten. Es erweitert lediglich eine ReactComponent um die Unterstützung für PropsFlow und EventFlow, sodass die Eigenschaften und Ereignisse der Komponente visuell konfiguriert und orchestriert werden können.

ReactComponent
FlowModel
Zusammenfassung
Durch die oben genannten drei Schritte haben wir eine Schaltflächenkomponente erstellt, die Konfiguration und Ereignis-Orchestrierung unterstützt und folgende Vorteile bietet:
- 🚀 Visuelle Konfiguration von Eigenschaften (wie Titel, Typ, Symbol)
- 🔄 Ereignisreaktionen können von einem Flow übernommen werden (z. B. Klick zum Anzeigen eines Dialogfelds)
- 🔧 Unterstützung für zukünftige Erweiterungen (wie bedingte Logik, Variablenbindung usw.)
Dieses Muster ist auch auf jede UI-Komponente anwendbar, wie Formulare, Listen und Diagramme. In NocoBase's FlowEngine ist alles orchestrierbar.

