专注于位于 vuejs 中另一个组件内的输入?

focus on an input that is located inside another component in vuejs?

我希望在输入某些键时能够专注于输入字段。我想关注的输入存在于 autocomplete-vue 中。 这就是我所说的:

<autocomplete v-shortkey="['alt', 's']"
              @shortkey.native="theAction()"
              ref="autocompleteInput" 
></autocomplete>

我想让我专注于输入的 Action 方法如下所示:

theAction () {
      this.$refs.autocompleteInput.$el.focus()
    }

这不是我想要的整个部分的重点。输入在 theAction 关注的内容中存在 2 个 div。从更好的角度来看,这就是 this.$refs.autocompleteInput.$el returns :

<div>
  <div data-position="below" class="autocomplete"> 
     <input role="combobox" class="autocomplete-input"> 
  </div>
</div>

关于如何使用 class 自动完成输入专注于输入有什么想法吗?任何建议都有帮助!

autocomplete 组件中为 <input> 添加一个 ref 并添加一个方法来聚焦它

<input role="combobox" class="autocomplete-input" ref="input"> 
methods: {
  focus() {
    this.$refs.input.focus()
  }
}

然后你可以像这样从父组件调用它

this.$refs.autocompleteInput.focus()