После долгих попыток с разными подходами, наконец, я добился успеха, создав общий модуль (без общего модуля я был
каждый раз получаю несколько ошибок)
1) Я создал собственный канал sanitizeHtml в src / app / pipe / custom / sanitizeHtml.ts
import { Pipe, PipeTransform } from '@angular/core';
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
@Pipe({
name: 'sanitize',
})
export class SanitizeHtml implements PipeTransform {
constructor(private sanitizer: DomSanitizer) {}
transform(v: string): SafeHtml {
return this.sanitizer.bypassSecurityTrustHtml(v);
}
}
2) Затем создал общий модуль src / app / app.sharemodule.ts
import { CommonModule } from '@angular/common';
import { SanitizeHtml } from './pipes/custom/sanitizeHtml';
import { NgModule } from '@angular/core';
@NgModule({
imports: [CommonModule],
declarations: [SanitizeHtml],
exports: [SanitizeHtml],
})
export class SharedModule {}
3) Затем импортировал его в мой ленивый загруженный модуль
import { SharedModule } from '../../app.sharemodule';
imports: [
CommonModule,
SharedModule,
],
4) В html файле используется как
[innerHTML]="rowData[col.field] | sanitize"