无法绕过 angular 清理安全

Unable to bypass angular sanitize security

我有一个所见即所得的编辑器(angular-editor):

<angular-editor [(ngModel)]="code" name="code"></angular-editor>

编辑器下方我正在尝试使用 ngx-highlightjs:

<pre>
  <code [highlight]="code" [lineNumbers]="true"></code>
</pre>

因此,当我在编辑器中输入类似 <p>test</p> 的内容时,我希望代码 (ngModel) 为 <p>test</p> 而不是 &lt;p&gt;test&lt;/p&gt;,以便它在 <code></code> 中突出显示.

我试过使用管道:

transform(html: string): SafeHtml {
  return this.sr.bypassSecurityTrustHtml(html);
}

它不起作用,无论如何值可以是 HTML、JS、任何语言,也可能是多种语言,所以我不能同时绕过 HTML 和 JS(我猜是因为有信任HTML 和 trustScript 方法)。

那么,code 怎么可能是 <p>test</p>(答案不应该只涵盖 HTML,而是任何语言,<script>...</script>)而不是 &lt;p&gt;test&lt;/p&gt?

我想我不能使用 DomSanitizer class,因为它涵盖 HTML 或脚本,而不是两者。

注意:我什至不关心安全性,只有我会使用该应用程序。

我必须格式化要突出显示的代码。