当尝试通过<video>
获取@ViewChild()
元素引用时,我的行为不一致。我可以从IonViewDidEnter
中进行console.log元素引用,但是当我尝试通过回调来console.log时,得到undefined
。为了澄清,这是我的代码
@ViewChild('video', { static: false }) private videoElRef: ElementRef;
ionViewDidEnter() {
setTimeout(() => {
console.log(this.videoElRef);
}, 50);
setTimeout(this.logStuff, 100);
setTimeout(() => {
console.log(this.videoElRef);
}, 150);
}
private logStuff() {
console.log(this.videoElRef);
}
这是输出:
> ElementRef {nativeElement: video}
> undefined
> ElementRef {nativeElement: video}
我也尝试了此操作,没有超时,实际上可以解决问题。但是我仍然需要超时。