Вы должны сообщить Angular, что ваш HTML безопасен. В вашем случае я бы предложил создать канал, который возвращает объект SafeHtml
. Для этого в канале введите DomSanitizer
an, затем вызовите bypassSecurityTrustHtml(html)
:
return domSanitizer.bypassSecurityTrustHtml(html);
С такой трубкой вы могли бы сделать это, предполагая, что назвали ее SafePipe
:
[innerHTML]="item[key]|safe"
Конечно, вы также можете добавить метод в свой компонент, который делает то же самое, но он менее пригоден для повторного использования:
public sanitize(html: string): SafeHtml {
return this.sanitizer.bypassSecurityTrustHtml(html);
}
А потом,
[innerHTML]="santize(item[key])"
Конечно, делайте это, только если вы абсолютно уверены, что ваш HTML-код безопасен.