InnerHTML * ngIf不起作用Angular5

时间:2018-06-28 09:47:03

标签: angular innerhtml ngif

要显示GIS Openlayers地图上的弹出窗口,请使用InnerHtml属性。 如果字段为假,我要隐藏的是DIV。

似乎angular忽略了我的ngif,这是我的代码:

this.content.innerHTML = `
      <div style="width: 150px; float: right; font-size: 13px;" *ngIf="!test">
              ${ test } 
      </div> `

我的布尔测试为假。 ngIf是否可以与innerHTML一起使用?

很多

2 个答案:

答案 0 :(得分:1)

使用*ngIf时,Angular不会招待您的innerHTML

每当您通过innerHTML传递某些内容时,Angular都将渲染该内容,而不像添加ngIf事件那样评估该内容中的任何表达式或绑定。

答案 1 :(得分:0)

您需要添加和删除以下样式

constructor(private elRef: ElementRef) { 

 this.elRef.nativeElement.querySelector('#showResponsiveNavbarone')
 .classList.remove('visibletrue');

}
 <style>
  .visiblefalse{
  display: none !important;
}
.visibletrue{
 display: block !important;
}