angular4获得焦点事件_Angular 4 文本框自动获取焦点二
Angular是不推薦直接通過DOM操作獲取元素的,要操作元素就通過@ViewChild裝飾器。
在HTML中對元素添加引用myInput:
在ts中可以通過ViewChild獲取指定元素的引用:
import { ViewChild } from '@angular/core';
@ViewChild('myInput') input;
獲取到對應(yīng)元素的引用后,你想添加焦點(diǎn),如下:
this.input.nativeElement.focus()
nativeElement獲取的是原始DOM元素,至于你想在哪里自動獲取焦點(diǎn),就看你的業(yè)務(wù)邏輯了,可以配合Angular對應(yīng)的生命周期使用。
這是在segmentfault上別人給我的答案。
我的業(yè)務(wù)需求是頁面加載完畢就立馬給input獲取焦點(diǎn);
所以用到了
ngAfterViewInit()
:
void {
this.
renderer.
invokeElementMethod(
this.
infocus.
nativeElement,'focus');
}
如果使用實(shí)現(xiàn)AfterViewInit,OnDestroy,那么你需要實(shí)現(xiàn)接口方法
export class ModalDirective implements AfterViewInit,OnDestroy {
ngAfterViewInit() {
}
ngOnDestroy() {
}
}
不然會報錯
Implement lifecycle hook interface AfterViewInit for method ngAfterViewInit
總結(jié)
如果覺得編程之家網(wǎng)站內(nèi)容還不錯,歡迎將編程之家網(wǎng)站推薦給程序員好友。
本圖文內(nèi)容來源于網(wǎng)友網(wǎng)絡(luò)收集整理提供,作為學(xué)習(xí)參考使用,版權(quán)屬于原作者。
如您喜歡交流學(xué)習(xí)經(jīng)驗(yàn),點(diǎn)擊鏈接加入交流1群:1065694478(已滿)交流2群:163560250
總結(jié)
以上是生活随笔為你收集整理的angular4获得焦点事件_Angular 4 文本框自动获取焦点二的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql数据库的体系结构包括什么组件_
- 下一篇: java jnlp_java – 调试J