我使用的是 Angular 2.0.0-beta.0,想要直接创建和绑定一些简单的 HTML。这是否可能?如何实现?
我尝试使用了以下代码:
{{myField}}
但是myField中的文本将被转义。
对于Angular 1.x,我发现了ng-bind-html,但这似乎在2.x中不被支持。
谢谢 Frank
我使用的是 Angular 2.0.0-beta.0,想要直接创建和绑定一些简单的 HTML。这是否可能?如何实现?
我尝试使用了以下代码:
{{myField}}
但是myField中的文本将被转义。
对于Angular 1.x,我发现了ng-bind-html,但这似乎在2.x中不被支持。
谢谢 Frank
绑定到 innerHTML
属性
有两种实现方法:
<div [innerHTML]="myField"></div>
<div innerHTML="{{myField}}"></div>
为了将已传递的 HTML 标记为受信任状态,以便 Angular DOM 清理器不会剥离其中的部分。<div [innerHTML]="myField | safeHtml"></div>
像烟斗一样
@Pipe({name: 'safeHtml'})
export class Safe {
constructor(private sanitizer:DomSanitizer){}
transform(value: any, args?: any): any {
return this.sanitizer.bypassSecurityTrustHtml(value);
// return this.sanitizer.bypassSecurityTrustStyle(style);
// return this.sanitizer.bypassSecurityTrustXxx(style); - see docs
}
}
[innerHTML]="..."
绑定来添加任何Angular特定的内容。使其工作的唯一方法是在运行时创建和编译组件。 - Günter Zöchbauer