Este documento ha sido traducido por IA. Para información precisa, consulte la versión en inglés.
Renderiza elementos de React, cadenas HTML o nodos DOM en un contenedor especificado. Si no se proporciona un container, por defecto se renderiza en ctx.element y hereda automáticamente el contexto de la aplicación, como ConfigProvider y los temas.
| Escenario | Descripción |
|---|---|
| JSBlock | Renderizar contenido personalizado de bloques (gráficos, listas, tarjetas, etc.) |
| JSField / JSItem / JSColumn | Renderizar visualizaciones personalizadas para campos editables o columnas de tablas |
| Bloque de detalles | Personalizar el formato de visualización de los campos en las páginas de detalles |
Nota:
ctx.render()requiere un contenedor de renderizado. Si no se pasa uncontaineryctx.elementno existe (por ejemplo, en escenarios de lógica pura sin interfaz de usuario), se lanzará un error.
| Parámetro | Tipo | Descripción |
|---|---|---|
vnode | React.ReactElement | Node | DocumentFragment | string | Contenido a renderizar |
container | Element | DocumentFragment (Opcional) | Contenedor de destino para el renderizado, por defecto es ctx.element |
Valor de retorno:
ReactDOMClient.Root, lo que facilita llamar a root.render() para actualizaciones posteriores.null.| Tipo | Comportamiento |
|---|---|
React.ReactElement (JSX) | Se renderiza utilizando createRoot de React, proporcionando todas las capacidades de React y heredando automáticamente el contexto de la aplicación. |
string | Establece el innerHTML del contenedor después de la limpieza con DOMPurify; cualquier raíz de React existente se desmontará primero. |
Node (Element, Text, etc.) | Se añade mediante appendChild después de vaciar el contenedor; cualquier raíz de React existente se desmontará primero. |
DocumentFragment | Añade los nodos hijos del fragmento al contenedor; cualquier raíz de React existente se desmontará primero. |
ctx.render() reemplaza el contenido existente en el contenedor en lugar de añadirlo.ctx.element.innerHTML está en desuso; en su lugar, debe utilizarse ctx.render() de forma consistente.ctx.element es undefined (por ejemplo, dentro de módulos cargados a través de ctx.importAsync), se debe proporcionar explícitamente un container.ctx.render().ctx.render() después de cargar bibliotecas externas de React o componentes bajo demanda.