@ViewChild를 사용하여 특정 텍스트 영역에 포커스를 설정할 수 있나요?
P粉477369269
P粉477369269 2023-09-08 16:58:05
0
2
558

프런트엔드 각도 앱이 있고 특정 텍스트 영역에 포커스를 설정하고 커서가 깜박이게 하고 로드 시 사용자가 텍스트 영역에 입력할 수 있도록 준비하고 싶습니다.

인터넷 검색을 해보니 @ViewChild가 올바른 선택일지도 모른다는 생각이 들었습니다. 하지만 지금까지 나는 그것을 작동시킬 수 있었습니다.

이것은 내 전체 독립형 TS 파일입니다.

으으으으

P粉477369269
P粉477369269

모든 응답(2)
P粉144705065

먼저 올바른 옵션을 @ViewChild에 전달하는 것입니다:

으아악

그렇지 않으면 DOM 노드 대신 구성 요소 인스턴스를 얻게 됩니다.

*ngIf/*ngFor와 같은 구조적 지시문이 없으면 통과할 수도 있습니다 {static: true, read: ElementRef},它将使elementRef在ngOnInit中可用,否则你必须使用AfterViewInit

P粉436688931

아직 DOM에 NativeElement가 없기 때문에 코드가 작동하지 않는 것 같아요. 다음은 작동합니다(콘솔(test1)에서 ngAfterViewInit 시작 부분에서 NativeElement가 null임을 확인해야 합니다). 어쩌면 1000ms를 추가해야 할 수도 있습니다:

으아악

}

nativeElement가 DOM에 나타날 때까지 기다리는 더 결정적인 방법은 여기에 설명되어 있습니다(setTimeout보다). 함수가 요소가 존재할 때까지 기다리도록 합니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿