Angular 2-呈现innerHtml后的事件

Angular 2-呈现innerHtml后的事件,angular,angular2-directives,Angular,Angular2 Directives,我有一个div元素,其中innerHtml绑定到字符串(html)属性 <div [effectDirectiveTrigger]="mainContent != null" [innerHtml]="mainContent"></div> 我的问题是,即使属性已被触发,innerHtml也尚未编写。这似乎需要一些时间。只有当它设置了一个ungly超时以允许angular赶上时,它才起作用 有我可以参加的活动吗?或者你有没有其他/更好的想法来实现我的

我有一个div元素,其中innerHtml绑定到字符串(html)属性

<div  [effectDirectiveTrigger]="mainContent != null"   
      [innerHtml]="mainContent"></div>
我的问题是,即使属性已被触发,innerHtml也尚未编写。这似乎需要一些时间。只有当它设置了一个ungly超时以允许angular赶上时,它才起作用


有我可以参加的活动吗?或者你有没有其他/更好的想法来实现我的目标?jQuery是否可以提供帮助?

innerHTML
每次更新
mainContent
时都会更新,并且发生以下更改检测循环。没有任何事件。更新
mainContent
后,您可以自己发出事件。如果您自己使用
cdRef.detectChanges()
调用更改检测,那么现在它已呈现

看一看
ngAfterViewInit
应该可以工作。

已经尝试了
ngAfterViewInit
。它发生得很早,甚至在最后一个
ngOnChanges
-mainContent异步加载之前。
ngAfterViewInit
是一个仅组件的钩子,这可能是它在我的情况下没有帮助的原因。是否可以提供一个plunker之类的工具?
@Input('effectDirectiveTrigger')
trigger:boolean = false;

ngOnChanges(){
    console.log('ngOnChanges');
    if (this.trigger){
        // fire some effects
        // seems to happen before the innerHtml has been rendered
    }
}