Dieses Dokument wurde von KI übersetzt. Für genaue Informationen lesen Sie bitte die englische Version.
ctx.getVar()
Liest Variablenwerte asynchron aus dem aktuellen Laufzeitkontext. Die Variablenauflösung entspricht {{ctx.xxx}} in SQL und Vorlagen und stammt normalerweise vom aktuellen Benutzer, dem aktuellen Datensatz, Ansichtsparametern, dem Popup-Kontext usw.
Anwendungsbereiche
Typdefinition
Rückgabewert: Promise<any>. Verwenden Sie await, um den aufgelösten Wert zu erhalten; gibt undefined zurück, wenn die Variable nicht existiert.
Wenn ein Pfad übergeben wird, der nicht mit
ctx.beginnt, wird ein Fehler ausgelöst:ctx.getVar(path) expects an expression starting with "ctx.", got: "...".
Häufige Variablenpfade
ctx.getVarInfos()
Ruft die Strukturinformationen (Typ, Titel, Untereigenschaften usw.) der auflösbaren Variablen im aktuellen Kontext ab, um das Erkunden verfügbarer Pfade zu erleichtern. Der Rückgabewert ist eine statische Beschreibung basierend auf meta und enthält keine tatsächlichen Laufzeitwerte.
Typdefinition
Im Rückgabewert ist jeder Schlüssel ein Variablenpfad und der Wert die Strukturinformation für diesen Pfad (einschließlich type, title, properties usw.).
Parameter
Beispiel
Unterschied zu ctx.getValue
In einem JSField verwenden Sie getValue/setValue, um das aktuelle Feld zu lesen oder zu schreiben; verwenden Sie getVar, um auf andere Kontextvariablen zuzugreifen (wie record, user, formValues).
Hinweise
- Pfad muss mit
ctx.beginnen: z. B.ctx.record.id, andernfalls wird ein Fehler ausgelöst. - Asynchrone Methode: Sie müssen
awaitverwenden, um das Ergebnis zu erhalten, z. B.const id = await ctx.getVar('ctx.record.id'). - Variable existiert nicht: Gibt
undefinedzurück. Sie können??nach dem Ergebnis verwenden, um einen Standardwert festzulegen:(await ctx.getVar('ctx.user.nickname')) ?? 'Gast'. - Formularwerte:
ctx.formValuesmuss überawait ctx.getVar('ctx.formValues')abgerufen werden; es wird nicht direkt alsctx.formValuesbereitgestellt. Verwenden Sie im Formularkontext vorzugsweisectx.form.getFieldsValue(), um die neuesten Werte in Echtzeit zu lesen.
Beispiele
Aktuelle Datensatz-ID abrufen
Datensatz innerhalb eines Popups abrufen
Unterelemente eines Array-Feldes lesen
Standardwert festlegen
Formularfeldwerte lesen
URL-Abfrageparameter lesen
Verfügbare Variablen erkunden
Verwandte Themen
- ctx.getValue() – Synchrones Abrufen des aktuellen Feldwerts (nur JSField/JSItem usw.)
- ctx.form – Formularinstanz,
ctx.form.getFieldsValue()kann Formularwerte in Echtzeit lesen - ctx.model – Das Modell, in dem sich der aktuelle Ausführungskontext befindet
- ctx.blockModel – Der übergeordnete Block, in dem sich das aktuelle JS befindet
- ctx.resource – Die Ressourceninstanz im aktuellen Kontext
{{ctx.xxx}}in SQL / Vorlagen – Verwendet dieselben Auflösungsregeln wiectx.getVar('ctx.xxx')

