Ce document a été traduit par IA. Pour des informations précises, veuillez consulter la version anglaise.
Rend des éléments React, des chaînes HTML ou des nœuds DOM dans un conteneur spécifié. Si le paramètre container n'est pas fourni, le rendu s'effectue par défaut dans ctx.element et hérite automatiquement du contexte de l'application, tel que le ConfigProvider et les thèmes.
| Scénario | Description |
|---|---|
| JSBlock | Rendu du contenu personnalisé d'un bloc (graphiques, listes, cartes, etc.) |
| JSField / JSItem / JSColumn | Rendu d'affichages personnalisés pour des champs modifiables ou des colonnes de tableau |
| Bloc de détails | Personnalisation du format d'affichage des champs dans les pages de détails |
Remarque :
ctx.render()nécessite un conteneur de rendu. Sicontainern'est pas transmis et quectx.elementn'existe pas (par exemple, dans des scénarios de logique pure sans interface utilisateur), une erreur sera générée.
| Paramètre | Type | Description |
|---|---|---|
vnode | React.ReactElement | Node | DocumentFragment | string | Contenu à rendre |
container | Element | DocumentFragment (Optionnel) | Conteneur de rendu cible, par défaut ctx.element |
Valeur de retour :
ReactDOMClient.Root, facilitant l'appel ultérieur à root.render() pour les mises à jour.null.| Type | Comportement |
|---|---|
React.ReactElement (JSX) | Rendu via le createRoot de React, offrant toutes les capacités de React et héritant automatiquement du contexte de l'application. |
string | Définit l' innerHTML du conteneur après nettoyage avec DOMPurify ; toute racine React existante sera d'abord démontée. |
Node (Élément, Texte, etc.) | Ajout via appendChild après avoir vidé le conteneur ; toute racine React existante sera d'abord démontée. |
DocumentFragment | Ajout des nœuds enfants du fragment au conteneur ; toute racine React existante sera d'abord démontée. |
ctx.render() remplace le contenu existant dans le conteneur au lieu de s'y ajouter.ctx.element.innerHTML est obsolète ; ctx.render() doit être utilisé systématiquement à la place.ctx.element est undefined (par exemple, dans des modules chargés via ctx.importAsync), un container doit être explicitement fourni.ctx.render().ctx.render() après le chargement à la demande de bibliothèques React ou de composants externes.