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 • Equip 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?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat