Cette documentation a été traduite automatiquement par IA.
Le Champ JS permet de personnaliser le rendu du contenu à l'emplacement d'un champ en utilisant JavaScript. On le trouve fréquemment dans les blocs de détails, les éléments en lecture seule des formulaires, ou comme « Autres éléments personnalisés » dans les colonnes de tableau. Il est idéal pour des affichages personnalisés, la combinaison d'informations dérivées, le rendu de badges de statut, de texte enrichi ou de graphiques.

ctx.value pour générer le rendu.ctx.getValue()/ctx.setValue(v) et un événement de conteneur js-field:value-change, facilitant la synchronisation bidirectionnelle avec les valeurs du formulaire.En lecture seule
Modifiable
Le code d'exécution du Champ JS peut directement utiliser les capacités de contexte suivantes :
ctx.element : Le conteneur DOM du champ (ElementProxy), supportant innerHTML, querySelector, addEventListener, etc.ctx.value : La valeur actuelle du champ (en lecture seule).ctx.record : L'objet enregistrement actuel (en lecture seule).ctx.collection : Les métadonnées de la collection à laquelle le champ appartient (en lecture seule).ctx.requireAsync(url) : Charge une bibliothèque AMD/UMD de manière asynchrone via une URL.ctx.importAsync(url) : Importe dynamiquement un module ESM via une URL.ctx.openView(options) : Ouvre une vue configurée (fenêtre contextuelle/tiroir/page).ctx.i18n.t() / ctx.t() : Internationalisation.ctx.onRefReady(ctx.ref, cb) : Effectue le rendu une fois le conteneur prêt.ctx.libs.React / ctx.libs.ReactDOM / ctx.libs.antd / ctx.libs.antdIcons / ctx.libs.dayjs : Bibliothèques génériques intégrées telles que React, ReactDOM, Ant Design, Ant Design Icons et dayjs, utilisées pour le rendu JSX et la gestion du temps. (ctx.React / ctx.ReactDOM / ctx.antd sont conservés pour la compatibilité.)ctx.render(vnode) : Rend un élément React, une chaîne HTML ou un nœud DOM dans le conteneur par défaut ctx.element. Un rendu répété réutilisera le Root et écrasera le contenu existant du conteneur.Spécifique au type modifiable (JSEditableField) :
ctx.getValue() : Récupère la valeur actuelle du formulaire (priorise l'état du formulaire, puis revient aux props du champ).ctx.setValue(v) : Définit la valeur du formulaire et les props du champ, en maintenant une synchronisation bidirectionnelle.js-field:value-change : Déclenché lorsque la valeur externe change, ce qui facilite la mise à jour de l'affichage de l'entrée par le script.L'éditeur de script du Champ JS prend en charge la coloration syntaxique, les indications d'erreurs et les extraits de code (Snippets) intégrés.
Snippets : Ouvre une liste d'extraits de code intégrés, qui peuvent être recherchés et insérés en un clic à la position actuelle du curseur.Run : Exécute directement le code actuel. Le journal d'exécution est affiché dans le panneau Logs en bas, supportant console.log/info/warn/error et la mise en évidence des erreurs pour une localisation facile.
Vous pouvez également générer du code avec l'employé IA :
if (!lib) return;).class ou [name=...] et d'éviter les id fixes afin de prévenir les doublons d' id dans plusieurs blocs ou fenêtres contextuelles.