Por qué @Transform no se ejecuta en class-transformer y cómo solucionarlo

Guía sobre por qué @Transform puede dejar campos derivados undefined y cómo solucionarlo con @Expose, excludeExtraneousValues, exposeAll o getters para DTOs.

8 sept 2025 • 2 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Si alguna vez has usado class-transformer con @Transform es posible que te hayas encontrado con que una propiedad derivada aparece como undefined aun cuando agregaste @Transform.

El motivo es sencillo: por defecto class-transformer solo ejecuta @Transform en las propiedades que existen en el objeto plano de entrada. Si el objeto plano solo contiene la clave email, por ejemplo { email: abc@test.com }, entonces cualquier propiedad que no esté presente, como normalized_email, se omite y su transformador no se dispara.

La solución directa es forzar que esa propiedad entre en el pipeline de transformación usando @Expose. Si decoras normalized_email con @Expose y con @Transform el transformador se ejecutara incluso si la clave normalized_email no estaba en el objeto plano de entrada.

Otra alternativa global si no quieres añadir @Expose en cada atributo es ajustar las opciones globales de transformación. Por ejemplo activar excludeExtraneousValues hace que solo se conserven las propiedades marcadas con @Expose, lo que obliga a declarar explícitamente lo que debe mantenerse. Otra opción es usar la estrategia exposeAll para que todas las propiedades queden expuestas por defecto y solo uses @Expose donde necesites un transformador especial.

Si no quieres lidiar con decoradores, una solución simple y fiable es usar un getter calculado en la clase. Definir get normalized_email() { return this.email } evita la necesidad de @Expose o @Transform y siempre devuelve el valor derivado.

Resumen de buenas prácticas: usar @Transform solo si la propiedad existe o combinarlo con @Expose para forzar su ejecución; considerar excludeExtraneousValues o la estrategia exposeAll para control global; y usar getters para propiedades derivadas sencillas y deterministas.

En Q2BSTUDIO somos una empresa de desarrollo de software que ayuda a equipos y empresas a implementar buenas prácticas en arquitecturas y DTOs, así como soluciones robustas de aplicaciones a medida y software a medida. Si necesitas apoyo implementando transformaciones, validaciones y patrones de datos en proyectos reales, nuestros servicios abarcan desde desarrollo de aplicaciones a medida hasta soluciones de inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi. Contamos con experiencia en ciberseguridad y pentesting para garantizar que tus pipelines y datos estén protegidos y en arquitecturas cloud escalables y seguras.

Si quieres que te ayudemos a elegir la mejor estrategia entre getters, transforms o exposures para tus DTOs o necesitas un desarrollo a medida que integre inteligencia artificial, agentes IA, analitica con power bi o despliegue en servicios cloud aws y azure, ponte en contacto y te asesoramos.

Y tu, te has encontrado con este comportamiento de @Transform alguna vez? Como sueles manejar campos derivados en DTOs getters, transforms u otra estrategia? Cuentanos tu experiencia.

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.