问题描述
element 中多选的select 有个问题,就是点击空白或者关闭弹窗,下拉还会一直展示出来
created() {},
// 定义指令
directives: {
clickOutside: {
bind: function (el, binding, vnode) {
el.clickOutsideEvent = function (event) { // here I check that click was outside the el and his childrens
if (!(el === event.target || el.contains(event.target))) { // and if it did, call method provided in attribute value
vnode.context[binding.expression](event)
}
}
document.body.addEventListener('click', el.clickOutsideEvent)
},
unbind: function (el) {
document.body.removeEventListener('click', el.clickOutsideEvent)
}
}
},
使用方法
ref="select"
v-clickOutside="clickOutSide"
methods里加个 clickOutSide