KI-Übersetzungshinweis
Dieses Dokument wurde von KI übersetzt. Für genaue Informationen lesen Sie bitte die englische Version.
JS Item
Einführung
JS Item wird für „Benutzerdefinierte Elemente“ in Formularen verwendet (keine Feldbindung). Sie können JavaScript/JSX verwenden, um beliebige Inhalte zu rendern (Hinweise, Statistiken, Vorschauen, Schaltflächen usw.) und mit dem Formular- und Datensatz-Kontext zu interagieren. Es eignet sich für Szenarien wie Echtzeit-Vorschauen, Erläuterungshinweise, kleine interaktive Komponenten und Ähnliches.

Laufzeit-Kontext-API (häufig verwendet)
ctx.element: DOM-Container des aktuellen Elements (ElementProxy), unterstütztinnerHTML,querySelector,addEventListenerusw.;ctx.form: AntD Form-Instanz, ermöglichtgetFieldValue / getFieldsValue / setFieldsValue / validateFieldsusw.;ctx.blockModel: Modell des Formularblocks, in dem es sich befindet; kannformValuesChangeüberwachen, um Verknüpfungen zu implementieren;ctx.record/ctx.collection: Aktueller Datensatz und Metainformationen der Sammlung (in einigen Szenarien verfügbar);ctx.requireAsync(url): Lädt AMD/UMD-Bibliotheken asynchron per URL;ctx.importAsync(url): Importiert ESM-Module dynamisch per URL;ctx.openView(viewUid, options): Öffnet eine konfigurierte Ansicht (Schublade/Dialog/Seite);ctx.message/ctx.notification: Globale Hinweise und Benachrichtigungen;ctx.t()/ctx.i18n.t(): Internationalisierung;ctx.onRefReady(ctx.ref, cb): Rendert erst, wenn der Container bereit ist;ctx.libs.React/ctx.libs.ReactDOM/ctx.libs.antd/ctx.libs.antdIcons/ctx.libs.dayjs/ctx.libs.lodash/ctx.libs.math/ctx.libs.formula: Integrierte Bibliotheken wie React / ReactDOM / Ant Design / Ant Design Icons / dayjs / lodash / math.js / formula.js für JSX-Rendering, Zeitverarbeitung, Datenoperationen und mathematische Berechnungen. (ctx.React/ctx.ReactDOM/ctx.antdbleiben zur Kompatibilität erhalten.)ctx.render(vnode): Rendert React-Elemente/HTML/DOM in den Standard-Containerctx.element; bei mehrfachem Rendern wird die Root wiederverwendet und der vorhandene Inhalt des Containers überschrieben.
Editor und Snippets
Snippets: Öffnet eine Liste integrierter Code-Fragmente, die gesucht und mit einem Klick an der aktuellen Cursorposition eingefügt werden können.Run: Führt den aktuellen Code direkt aus und gibt die Protokolle im unteren BereichLogsaus; unterstütztconsole.log/info/warn/errorund Fehlerhervorhebung.

- Kann mit KI-Mitarbeitern kombiniert werden, um Skripte zu erstellen/zu ändern: KI-Mitarbeiter · Nathan: Frontend-Ingenieur
Häufige Verwendung (vereinfachte Beispiele)
1) Echtzeit-Vorschau (Formularwerte lesen)
2) Ansicht öffnen (Schublade)
3) Externe Bibliotheken laden und rendern
Hinweise
- Das Laden externer Bibliotheken sollte über vertrauenswürdige CDNs erfolgen; für Fehlerfälle sollten Rückfalloptionen vorgesehen werden (z. B.
if (!lib) return;). - Bei Selektoren sollten bevorzugt
classoder[name=...]verwendet werden; vermeiden Sie festeids, um doppelteids in mehreren Blöcken/Popups zu verhindern. - Ereignisbereinigung: Häufige Änderungen der Formularwerte lösen mehrfaches Rendern aus; vor dem Binden von Ereignissen sollten diese bereinigt oder dedupliziert werden (z. B. erst
remove, dannadd, oder{ once: true }, oder Markierung perdatasetzur Vermeidung von Duplikaten).

