是否可以为元素设置焦点?

is it possible to set focus for element?

我在页面上有两个元素:

 <input tabindex="0" type="text" (keydown)="keydownInputSearch($event)" (click)="showSearchResultContent = !showSearchResultContent" #inputSearch>

并阻止:

 <div #searchList class="SearchList" *ngIf="showSearchResult()" tabindex="-1"></div>

问题是当块 #searchLis 存在时我无法将焦点设置回 #inputSearch

我试过:

 this.inputSearch.nativeElement.focus();

没有错误,没有效果。我想问题是 #searchListtabindex="-1"#inputSearch 有更少:tabindex="0".

但默认输入应该自动获得焦点。

你快到了。只关注 ngAfterViewInit

中的输入
 ngAfterViewInit() {
   this.inputSearch.nativeElement.focus();
 }

Stackblitz:https://stackblitz.com/edit/hello-angular-6-1svrgt