Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

200
Vistas
Interpolación angular para HTML un elemento de etiqueta

Tengo una plantilla de Angular que intenta obtener una cadena que es un elemento HTML, pero la cadena no se representa correctamente.

Angular Html (para su información, este es un subelemento en una repetición ng):

 <div class="right-column">{{item.map[label]}}</div>

Esta cadena se extrae y esencialmente se formateará de la siguiente manera:

 "<a href="..." target="_blank"> Click Here </a>"

El resultado con esta plantilla es la cadena exacta que se muestra en el DOM (con algunas entidades html sustituidas).

El elemento resultante en el DOM se ve así:

 <div class="right-column ng-binding">&lt;a href="..." target="_blank"&gt;Click Here&lt;/a&gt;</div>

Noté que si edito el HTML en las herramientas de desarrollo del navegador y reemplazo las entidades html (&lt y &gt) con los caracteres reales < y >, el elemento html se representa correctamente.

He intentado usar [innerHTML]="item.map[label]" en la plantilla, lo que da como resultado que no se represente nada. También probé ng-bind-html="item.map[label]" que estaba dando errores incluso cuando usaba ngSanitize en el archivo del controlador js.

No estoy seguro de qué más probar para una solución adecuada. Si hay una manera en que puedo formatear la cadena que se pasa sin alterar la plantilla angular, sería preferible, ya que hay otros formatos que se pasan a la plantilla además de este estilo de etiqueta.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Veo que hay un error tipográfico

 "<a href="..."> target="_blank"> Click Here </a>"

debiera ser:

 "<a href="..." target="_blank"> Click Here </a>"

Creo que el enlace a [innerHTML] debería funcionar, si no funciona, puede decirle a angular que el HTML es seguro y que pasa por alto el proceso de desinfección. Lo logra creando una canalización que aplica el DomSanitizer de bypassSecurityTrustHtml en la cadena HTML. Ejemplo de slackblitz:

https://stackblitz.com/edit/angular-2baxog

Como referencia, lee más aquí Enlace HTML angular

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda