Teleportar un componente en Angular y conservar su estado

Conserva el estado de tus componentes al moverlos en Angular: compara ng-template/ngTemplateOutlet, TemplatePortal y DomPortal. DomPortal mueve el DOM sin recrear vistas, preservando timers e injector.

19 sept 2025 • 3 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

¿Alguna vez has movido un componente por tu layout y has visto desaparecer su estado al instante? En este artículo repasamos tres formas de solucionar este problema en Angular y cómo conservar el estado al 'teleportar' un componente: ng-template con ngTemplateOutlet, TemplatePortal del CDK y DomPortal del CDK.

Contexto de la demo: imaginemos un panel administrativo con un banner promocional que puede mostrarse en la barra lateral o en la zona principal. El banner contiene un contador y un botón de like. Si al moverlo entre regiones el temporizador se reinicia y el like se pierde, es porque Angular está recreando la vista y generando una nueva instancia del componente cada vez.

En la implementación inicial se usa una señal dockRight para decidir en qué región renderizar y dos condicionales que colocan <promo-banner> en uno u otro sitio. Al alternar, Angular destruye la vista anterior y crea una nueva, por eso se pierden los datos en memoria y los timers.

Primera opción ng-template y ngTemplateOutlet: definimos un ng-template con referencia y usamos ngTemplateOutlet para insertarlo en ambos lugares. Esto permite reutilizar el mismo template, pero no mantiene el estado porque cada inserción crea una nueva embedded view. Conclusión: la vista se recrea, se pierde estado.

Segunda opción CDK TemplatePortal: usando @angular/cdk/portal podemos envolver el template en un TemplatePortal y adjuntarlo con cdkPortalOutlet. Aunque la API cambia, el resultado es similar al ngTemplateOutlet: al adjuntar el portal se crea una nueva vista embebida, por lo que el componente se reinyecta y su estado se reinicia. ComponentPortal tampoco evita este efecto si se pone en la misma situación.

Tercera opción CDK DomPortal: la gran solución. Un DomPortal no recrea la vista, literalmente mueve el nodo DOM existente a otro outlet. Eso significa misma instancia, mismas señales, mismos timers y proveedor DI origen conservado. En la práctica se cambia la referencia del template por un ElementRef que envuelve el elemento real que contiene el componente y se crea un DomPortal de tipo HTMLElement. Al adjuntarlo en otro contenedor con cdkPortalOutlet lo que hace Angular es reparentar el DOM en lugar de volver a crear la vista, así que el estado persiste.

Resumen práctico: si tu objetivo es conservar estado al mover un componente por el DOM usa DomPortal. Si usas ngTemplateOutlet o TemplatePortal ten en cuenta que Angular recreará la vista y perderás el estado. Regla sencilla para recordar: Templates recrean, DomPortal mueve.

Ventajas adicionales de DomPortal: preserva el injector de origen, por tanto providers con alcance de componente y contexto de DI siguen funcionando sin cambios. Es la alternativa ideal cuando necesitas teletransportar elementos interactivos sin reiniciar lógica interna.

En Q2BSTUDIO aplicamos patrones como este para construir aplicaciones robustas y escalables. Si necesitas desarrollar una solución personalizada para tu negocio, desde aplicaciones a medida hasta integraciones con inteligencia artificial y agentes IA, podemos ayudarte. Con experiencia en software a medida y aplicaciones a medida entregamos productos con buenas prácticas, seguridad y rendimiento.

Además ofrecemos servicios especializados como ciberseguridad y pentesting para proteger tus despliegues, servicios cloud AWS y Azure para alojar y escalar tus sistemas, y servicios de inteligencia de negocio y power bi para convertir datos en decisiones. Si te interesa crear una aplicación a medida con enfoque en IA para empresas visita servicios de desarrollo de aplicaciones y software a medida y para explorar soluciones de inteligencia artificial consulta nuestras capacidades en inteligencia artificial.

Palabras clave relevantes para mejorar posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

Si quieres que te mostremos el ejemplo en código, te podemos compartir una demo y acompañarte en la integración con arquitecturas cloud o en la automatización de procesos para que tu aplicación mantenga estado y escalabilidad sin comprometer seguridad ni rendimiento.

Conclusión final: cuando muevas un componente en Angular recuerda esta frase y no fallarás al decidir la técnica adecuada para conservar estado: Templates recrean cosas mientras DomPortal las mueve.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat