在某些事件中,我需要導航到不同的路線並聚焦其中一個輸入字段。在router.navigate之後的角度2焦點元素不起作用
我的模板
<qualification>
<address (updateAddress)="updateAddress($event);">
</address>
</qualification>
在地址分量的html按鈕
<span class="filter-address" (click)="updateAddressClicked()">Update Address </span>
在地址分量
@Output() updateAddress = new EventEmitter();
updateAddressClicked($event){
this.router.navigate(['/page/one'], {preserveQueryParams: true})
this.updateAddress.emit(true);
}
在資格組件我已經定義vc
作爲
@ViewChildren('inputone') vc;
上qualificatioin HTML
<input #inputone name="inputone">
和
updateAddress($event){
this.vc.first.nativeElement.focus()
}
當我在/頁/一個路線並導航到/頁/一個線路(即本身)焦點作品。但是,如果我在不同的路線可以說,/頁/兩,然後當事件觸發導航/頁/一個是好的,但我得到的錯誤,說
EXCEPTION: Uncaught (in promise): TypeError: Cannot read property 'nativeElement' of undefined
任何幫助表示讚賞。
哪個生命週期事件是被調用的焦點代碼?你能顯示完整的組件代碼嗎? – JayChase
焦點代碼在功能中,這是在另一個組件中的事件之後觸發的。 – rishal
@JayChase我已經更新了OP – rishal