Dieses Dokument wurde von KI übersetzt. Für genaue Informationen lesen Sie bitte die englische Version.
Der aktuell aktive View-Controller (Dialog, Drawer, Popover, eingebetteter Bereich usw.), der für den Zugriff auf Informationen und Operationen auf Ansichtsebene verwendet wird. Er wird von FlowViewContext bereitgestellt und ist nur innerhalb von Inhalten verfügbar, die über ctx.viewer oder ctx.openView geöffnet wurden.
| Szenario | Beschreibung |
|---|---|
| Dialog-/Drawer-Inhalt | Verwenden Sie ctx.view.close() innerhalb des content, um die aktuelle Ansicht zu schließen, oder nutzen Sie Header und Footer, um Titel und Fußzeilen zu rendern. |
| Nach dem Absenden des Formulars | Rufen Sie nach einer erfolgreichen Übermittlung ctx.view.close(result) auf, um die Ansicht zu schließen und das Ergebnis zurückzugeben. |
| JS-Block / Aktion | Bestimmen Sie den aktuellen Ansichtstyp über ctx.view.type oder lesen Sie Öffnungsparameter aus ctx.view.inputArgs aus. |
| Verknüpfungsauswahl, Untertabellen | Lesen Sie collectionName, filterByTk, parentId usw. aus den inputArgs für das Laden von Daten aus. |
Hinweis:
ctx.viewist nur in RunJS-Umgebungen mit einem View-Kontext verfügbar (z. B. innerhalb descontentvonctx.viewer.dialog(), in Dialogformularen oder innerhalb von Verknüpfungsauswahlen). In Standardseiten oder Backend-Kontexten ist esundefined. Es wird empfohlen, Optional Chaining zu verwenden (ctx.view?.close?.()).
| Eigenschaft/Methode | Typ | Beschreibung |
|---|---|---|
type | 'drawer' | 'popover' | 'dialog' | 'embed' | Aktueller Ansichtstyp |
inputArgs | Record<string, any> | Parameter, die beim Öffnen der Ansicht übergeben wurden (siehe unten) |
Header | React.FC | null | Kopfzeilen-Komponente zum Rendern von Titeln und Aktionsbereichen |
Footer | React.FC | null | Fußzeilen-Komponente zum Rendern von Schaltflächen usw. |
close(result?, force?) | void | Schließt die aktuelle Ansicht; result kann an den Aufrufer zurückgegeben werden |
update(newConfig) | void | Aktualisiert die Ansichtskonfiguration (z. B. Breite, Titel) |
navigation | ViewNavigation | undefined | Ansichtsnavigation innerhalb der Seite, einschließlich Tab-Wechsel usw. |
Derzeit unterstützen nur
dialogunddrawerdie KomponentenHeaderundFooter.
Die Felder in inputArgs variieren je nach Öffnungsszenario. Zu den häufigsten Feldern gehören:
| Feld | Beschreibung |
|---|---|
viewUid | Ansichts-UID |
collectionName | Name der Sammlung |
filterByTk | Primärschlüsselfilter (für Einzeldatensatz-Details) |
parentId | Eltern-ID (für Verknüpfungsszenarien) |
sourceId | Quelldatensatz-ID |
parentItem | Daten des Elternelements |
scene | Szenario (z. B. create, edit, select) |
onChange | Callback nach Auswahl oder Änderung |
tabUid | Aktuelle Tab-UID (innerhalb einer Seite) |
Greifen Sie auf diese über ctx.getVar('ctx.view.inputArgs.xxx') oder ctx.view.inputArgs.xxx zu.
| Zweck | Empfohlene Verwendung |
|---|---|
| Neue Ansicht öffnen | ctx.viewer.dialog() / ctx.viewer.drawer() oder ctx.openView() |
| Aktuelle Ansicht bedienen | ctx.view.close(), ctx.view.update() |
| Öffnungsparameter abrufen | ctx.view.inputArgs |
ctx.viewer ist für das „Öffnen“ einer Ansicht zuständig, während ctx.view die „aktuelle“ Ansichtsinstanz darstellt. ctx.openView wird verwendet, um vorkonfigurierte Workflow-Ansichten zu öffnen.
ctx.view ist nur innerhalb einer Ansicht verfügbar; auf Standardseiten ist es undefined.ctx.view?.close?.(), um Fehler zu vermeiden, wenn kein View-Kontext existiert.result von close(result) wird an das von ctx.viewer.open() zurückgegebene Promise übergeben.
ctx.viewerbietet Methoden wiedialog(),drawer(),popover()undembed()zum Öffnen von Ansichten an. Der über diese Methoden geöffnetecontentkann aufctx.viewzugreifen.