Esta documentación ha sido traducida automáticamente por IA.
JS Item se utiliza para crear "elementos personalizados" (no vinculados a un campo) dentro de un formulario. Con JavaScript/JSX, puede renderizar cualquier tipo de contenido, como mensajes, estadísticas, previsualizaciones o botones, e interactuar con el formulario y el contexto del registro. Es ideal para escenarios que requieren previsualizaciones en tiempo real, consejos instructivos o pequeños componentes interactivos.

ctx.element: El contenedor DOM (ElementProxy) del elemento actual, compatible con innerHTML, querySelector, addEventListener, entre otros.ctx.form: La instancia del formulario de AntD, que permite operaciones como getFieldValue, getFieldsValue, setFieldsValue, validateFields, etc.ctx.blockModel: El modelo del bloque de formulario al que pertenece, que puede escuchar formValuesChange para implementar la vinculación.ctx.record / ctx.collection: La información meta del registro actual y la colección (disponible en algunos escenarios).ctx.requireAsync(url): Carga asincrónicamente una librería AMD/UMD mediante una URL.ctx.importAsync(url): Importa dinámicamente un módulo ESM mediante una URL.ctx.openView(viewUid, options): Abre una vista configurada (cajón lateral/diálogo/página).ctx.message / ctx.notification: Mensajes y notificaciones globales.ctx.t() / ctx.i18n.t(): Internacionalización.ctx.onRefReady(ctx.ref, cb): Renderiza después de que el contenedor esté listo.ctx.libs.React / ctx.libs.ReactDOM / ctx.libs.antd / ctx.libs.antdIcons / ctx.libs.dayjs: Librerías comunes integradas como React, ReactDOM, Ant Design, iconos de Ant Design y dayjs, utilizadas para la renderización JSX y el manejo de fechas y horas. (ctx.React / ctx.ReactDOM / ctx.antd se mantienen por compatibilidad).ctx.render(vnode): Renderiza un elemento React/HTML/DOM en el contenedor predeterminado ctx.element. Múltiples renderizaciones reutilizarán el Root y sobrescribirán el contenido existente del contenedor.Snippets: Abre una lista de fragmentos de código predefinidos, permitiéndole buscar e insertarlos con un solo clic en la posición actual del cursor.Run: Ejecuta el código actual directamente y muestra los registros de ejecución en el panel Logs inferior. Admite console.log/info/warn/error y el resaltado de errores para su localización.
if (!lib) return;).class o [name=...] y evitar el uso de id fijos, para prevenir duplicidades en múltiples bloques o ventanas emergentes.remove antes de add, usar { once: true }, o marcar con un atributo dataset para evitar repeticiones).