Во-первых, элемент должен быть focusable
, для этого вам нужно установить атрибут tabIndex
для элемента.
<myDropdownComp tabIndex="-1"></myDropDownComp> // now component is focusable
Теперь вы можете попробовать с атрибутом autofocus
, но это будетпредпочтительнее сделать это в ngAfterViewInit
, чтобы проверить, есть ли уже сфокусированный элемент, если он есть, blur
, и сфокусировать этот элемент.
export class MyDropdownComponent implements AfterViewInit {
constructor(element: ElementRef) { }
ngAfterViewInit() {
if (document.activeElement) {
document.activeElement.blur();
}
this.element.nativeElement.focus();
}
}