项目需求: el-table带行编辑。
开发中遇到一旦行编辑过多,页面就变得奇卡无比。然后就做了假的输入框代替,后来又遇到需要二次点击才能正常聚焦,客户很不满意。呵呵呵。。。
思路:点击模拟框时自动聚焦
// 在main.js中注册一个全局自定义指令 `v-focus`
Vue.directive('focus', {
// 当被绑定的元素插入到 DOM 中时……
inserted: function (el) {
console.log(7,el)
// 聚焦元素
setTimeout(() => {
console.log(el.querySelector('input'))
el.focus()
el.querySelector('input').focus()
}, 100);
}
})
<el-input v-focus />
没问题,输入框自动聚焦了,然后下拉框还是不行。然后网上搜索了一下,使用this.$refs.select.toggleMenu()
,确实能自动展出了,但是有多个下拉框就有问题了,错位了
后来参考了vue el-select自动展开和高度设置_automatic-dropdown-CSDN博客 <el-input v-focus :automatic-dropdown="true" />
终于搞定了,不容易啊,记录下。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。