首页 新闻 会员 周边 捐助

如何让 angular 不自动过滤 innerHTML 中的 inline style 代码

0
悬赏园豆:30 [已解决问题] 解决于 2025-10-11 21:45

下面的模版代码中,innerHTML 会自动过滤 inline style 代码,请问如何禁用这个自动过滤?

<div
  #contentDiv
  [innerHTML]="articleContent()"
  [ngClass]="appExtraClass()"
></div>
dudu的主页 dudu | 高人七级 | 园豆:24728
提问于:2025-10-11 18:59
< >
分享
最佳答案
0

通过 signal input 的 transform + DomSanitizer.bypassSecurityTrustHtml 解决了

export class HtmlContentComponent {
  sanitizer = inject(DomSanitizer);
  appContent = input('', {
    transform: (html: string) => this.sanitizer.bypassSecurityTrustHtml(html),
  });
}

github 上的相关 issue:DomSanitizer should keep style attributes in HTML but sanitize them if needed

dudu | 高人七级 |园豆:24728 | 2025-10-11 21:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册