angular - 如何在Angular2中绑定(bind)原始html

标签 angular

这个问题在这里已经有了答案:





Angular HTML binding

(24 个回答)


6年前关闭。




我使用 Angular 2.0.0-beta.0,我想直接创建和绑定(bind)一些简单的 HTML。是可能的以及如何?

我试着用

{{myField}}

但 myField 中的文本会被转义。

对于 Angular 1.x,我发现了 ng-bind-html 的命中,但这似乎在 2.x 中不受支持

谢谢
坦率

最佳答案

绑定(bind)到 innerHTML属性

有2种方法可以实现:

<div [innerHTML]="myField"></div>
<div innerHTML="{{myField}}"></div>

将传递的 HTML 标记为受信任,以便 Angulars DOM sanitizer 不会剥离部分

<div [innerHTML]="myField | safeHtml"></div>

用 pipe

@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
  }
}

另见 In RC.1 some styles can't be added using binding syntax

关于angular - 如何在Angular2中绑定(bind)原始html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44951771/

相关文章:

angular - AWS EC2 上部署的网站与本地版本不同

Angular:可以在开发服务器(ngserve)上使用 PWA 吗?

html - 使用 [style.something.px] ="2"以 Angular 定义边框宽度(厚度)

angular - RXJS:跳过由其他可观察对象触发的可观察对象的值

angular - 如何延迟重置 Observable?

Angular2 路由

angular - 如何避免出现2次|在这种情况下异步(4.0.0)?

javascript - CORS OPTIONS 请求成功,但在 Safari 中挂起

javascript - Angular2 从数组创建列表

angular - 我如何在 ngx-bootstrap/datepicker 中设置选定的日期,当点击一个图标进入一个常见的 html 输入时,它会启动?