安装上的自动对焦输入(Vue)- iOS

Yco*_*con 6 javascript keyboard vue.js

我想在 Vue 组件出现时触发输入框聚焦(从而弹出键盘)。

它不工作iOS

我尝试使用 Vue 的示例指令(这里)和 HTML5,autoFocus但都没有奏效。

我在沙箱 ( https://codesandbox.io/s/lw321wqkm ) 中创建了这个示例。

FWIW,我不相信这是一个 JS 限制,因为我已经看到了示例工作(例如使用 React Native Web autoFocus-请参阅示例

父组件

<template>
<div>
  <TextComp v-if='showText' />
  <button @click='showText = !showText'> Show/hide input </button>
</div>

</template>
 ...
Run Code Online (Sandbox Code Playgroud)

子组件

<template>
<div>
   <input ref='focusMe' type='text'/>
</div>

</template>

<script>

export default {
  name: 'TextComp',
  mounted () {
    this.$refs.focusMe.focus()
  }
}

</script>
Run Code Online (Sandbox Code Playgroud)

Deb*_*obi 12

我希望你现在一定已经找到了解决办法。

但我只是想为像我这样的其他新用户添加这个。

mounted () {
    this.$refs.focusMe.focus()       // sometime this doesn't work.
  }
Run Code Online (Sandbox Code Playgroud)

尝试添加它。

this.$nextTick(() => this.$refs.focusMe.focus())
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请检查