在vue项目中引用element-ui时 让el-input 获取焦点的方法

// 注册一个全局自定义指令 `v-focus`
  Vue.directive('focus', function (el) {
    el.focus()
  })

这样使我们在组件中可以自用的调用v-focus方法,给他绑定定义布尔变量来控制元素是否获得焦点
但是这里要注意的是组件<el-input>本身在页面中渲染成了一个div元素
所以我们要在<el-input>被绑定为v-focus的同时
在自定义指令中获取组件下通过querySelector()方法获取input元素

&lt;el-input 
  v-model.trim="searchFor" 
  @blur="blurSearchFor"
  v-focus="blurFocus"&gt;
&lt;/el-input&gt;

Vue.directive('focus', function (el) {
  el.querySelector('input').focus()
})

原文地址:https://segmentfault.com/a/1190000014164763

原文地址:https://www.cnblogs.com/baixiaoxiao/p/15203254.html