Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ionic3/Angular 4设置焦点_Angular_Ionic Framework - Fatal编程技术网

Ionic3/Angular 4设置焦点

Ionic3/Angular 4设置焦点,angular,ionic-framework,Angular,Ionic Framework,在页面加载或事件后设置焦点是否有“最佳”实践 我尝试了以下方法,但在设置焦点或不设置焦点的情况下,结果并不一致。我需要它将焦点设置为不同类型的输入(按钮,文本等),无论是在加载还是在事件之后,等等 我只是想看看是否有一个可靠的方法来集中精力,因为我还没有找到一个很好的方法来完成这一点 ionViewDidLoad() { this.setFocusToInput('employeeIdInput'); } setFocusToInput(inputName) { set

在页面加载或事件后设置焦点是否有“最佳”实践

我尝试了以下方法,但在设置焦点或不设置焦点的情况下,结果并不一致。我需要它将焦点设置为不同类型的输入(按钮,文本等),无论是在加载还是在事件之后,等等

我只是想看看是否有一个可靠的方法来集中精力,因为我还没有找到一个很好的方法来完成这一点

ionViewDidLoad() {
    this.setFocusToInput('employeeIdInput');
  }

  setFocusToInput(inputName) {
    setTimeout(() => {
      this[inputName].setFocus();
    }, 1000);  
  }

我认为最好创建一个指令,注入一个ElementRef,并使用它来设置元素的焦点。然后,您也可以重用该指令,您编写的指令应该可以工作。我会把它放在一个服务中,这样它就可以重用。我还将它包装在
try catch
块中,以处理
此[inputName]
不存在的情况。