在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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM