知道dom何时更新 - Angular 2/4

时间:2018-01-19 10:34:31

标签: javascript html5 angular dom-events

所以我通过ngIf切换某个dom元素,并在设置为true之后立即切换,我也是通过Viewchild - ElementRef来定位该元素。 问题是,在切换之后,在dom中更新元素需要一定的时间,如果我调用一个包含该元素的变量,它将返回null,尽管在超时后它会将元素返回为它有足够的时间来更新dom。

以下是更好理解的示例代码:

HTML

@ViewChild('someElement') someElement:ElementRef;

toggle() {

this.showElement = true
console.log(this.someElement) //consoles undefined

}

Component.ts

@ViewChild('someElement') someElement:ElementRef;

toggle() {

this.showElement = true

setTimeout(function() {
    console.log(this.someElement) //Consoles the element
   }, 300) 

}

Component.ts

n

有没有办法可以在没有适当方式超时的情况下完成,例如检查dom更新的事件或什么?

0 个答案:

没有答案