v-clickoutside指令解决此问题
先引入
import Clickoutside from 'element-ui/src/utils/clickoutside'
export default{
directives: { Clickoutside },
}
在当前元素上绑定v-clickoutside指令,如下:
<ul v-clickoutside="handleClickOutside"
id="box"
ref="box"
class="handleColumn"
v-show="handeleBtn && n == file.id"
>
<li v-show="file.type !== 0" @click="deleteFileHandle(file.id)">
删除
</li>
<li v-show="file.type == 0" @click="deleteHandle(file.id)">
删除
</li>
<li v-show="file.type !== 0" @click="preview(file)">预览</li>
<li v-show="file.type !== 0" @click="downloadHandle(file)">
下载
</li>
</ul>
在绑定的事件上写需要实现的逻辑
handleClickOutside() {
// 点击除了页面其他地方关闭车型选择
this.handeleBtn = false;
},