解决方法
我发现有点“丑陋”,但使用“safe
Html”管道工作解决方案:
import {Pipe,PipeTransform} from '@angular/core'; import {DomSanitizer,SafeHtml} from '@angular/platform-browser'; @Pipe({name: 'safeHtml'}) export class SafeHtmlPipe implements PipeTransform { constructor(protected sanitized:DomSanitizer) { } transform(value:any):SafeHtml { return this.sanitized.bypassSecurityTrustHtml(value); } }
通过与Angular Universal一起使用,您可以插入任何脚本代码:
<div [innerHtml]="'<script type=\'application/ld+json\'>' + jsonLdStringifiedObj + '</script>' | safeHtml"></div>
我在Google Structured Data Testing Tool中测试了此代码的输出,它的工作方式与预期的一样.