у меня проблема
Я подписался на API, который возвращает некоторый HTML-контент. иногда он имеет iframes. однако, только iframe не загружается, и вместо этого он отображается в виде строки в браузере. Пожалуйста, проверьте ниже код
Компонентный файл
this._EmittersService.longDescemitted$.subscribe(obj => {
this.longDesc = obj;
});'
html файл
<div class="description-panel" [innerHTML]="longDesc" ></div>
Проблема: когда
this.longDesc = "<iframe width="something" height="something" src="something" ></iframe>"
это отображается как строка, она не обнаруживает, что она имеет iframe. Мне нужно, чтобы он отображался как HTML.
Шаг 1: импортируйте нижнюю часть в ts файл
import {DomSanitizer} from '@angular/platform-browser';
Шаг 2. Определение конструктора в персикалярном файле ts
constructor(private domSanitizer:DomSanitizer) {}
Шаг 3: -Use под кодом в файле ts в соответствии с требованием (метод/функция или конструктор)
this._EmittersService.longDescemitted$.subscribe(obj => {
this.longDesc = this.domSanitizer.bypassSecurityTrustHtml(obj or any html content);
or
this.longDesc = this.domSanitizer.bypassSecurityTrustHtml('<iframe width="something" height="something" src="something" ></iframe>')
});