el-date-picker手动隐藏日期选择

前言:在项目中遇到要移动模块,但是移动时没有触发el-date-picker的blur,导致模块移动时el-date-picker的日期选择框没有关闭,未达成效果。

首先,查看element文档发现el-date-picker的methods方法中只有focus,没有blur

el-date-picker手动隐藏日期选择_第1张图片

但是还是添加了ref,打印查看,眼见为实

 el-date-picker手动隐藏日期选择_第2张图片

可以看到是有一个blur方法的,于是就添加了 this.$refs.selectMove2.blur()尝试,结果发现,并没有解决问题,picker日期弹窗还是存在的,没有隐藏。

于是尝试了第二种方法,简单粗暴,找到picker对应的dom节点然后js中修改样式为display:none,

document.getElementsByClassName('el-date-picker')[0].style.display = 'none'

虽然达到了效果,但是出现了新的问题,在触发此次隐藏后picker弹窗不会出现,需要重新触发一次失去焦点才会再次显示picker弹窗。

最后,在上面打印的数据中看到一个隐藏弹窗的方法,于是做出了新的尝试,

el-date-picker手动隐藏日期选择_第3张图片

this.$refs.selectMove2.hidePicker()

 到这里问题也已经解决了,以此记录

你可能感兴趣的:(vue.js,elementui,javascript)