// 注册一个全局自定义指令 `v-focus` Vue.directive('focus', function (el) { el.focus() })
这样使我们在组件中可以自用的调用v-focus方法,给他绑定定义布尔变量来控制元素是否获得焦点
但是这里要注意的是组件<el-input>本身在页面中渲染成了一个div元素
所以我们要在<el-input>被绑定为v-focus的同时
在自定义指令中获取组件下通过querySelector()方法获取input元素
<el-input v-model.trim="searchFor" @blur="blurSearchFor" v-focus="blurFocus"> </el-input> Vue.directive('focus', function (el) { el.querySelector('input').focus() })