最近工作需求是 el-Cascader 级联多选框 任意选择一项,自动关闭面板? 来总结记录下。
element-ui的关闭面板方式👇
this.$refs.CascaderRef.dropDownVisible = false
element-plus的关闭面板方式👇
vue3.0写法
CascaderRef.value.togglePopperVisible()
//如果面板没有关闭,则手动关闭
if (CascaderRef.value.popperVisible) {CascaderRef.value.togglePopperVisible()
}
vue2.0写法
this.$refs.CascaderRef.togglePopperVisible()
//如果面板没有关闭,则手动关闭
if (CascaderRef.value.popperVisible) {CascaderRef.value.togglePopperVisible()
}
代码案例如下🌰
html代码:
<template><el-cascader ref="CascaderRef" @change="handleChange"></el-cascader>
</template>
js代码:
setup(props, {emit}){const CascaderRef = ref<any>(null);const handleChange = (newVal: number[]): void => {//选择任意一级选项,关闭面板CascaderRef.value.togglePopperVisible();//如果面板没有关闭,则手动关闭if (CascaderRef.value.popperVisible) {CascaderRef.value.togglePopperVisible();}};return { handleChange, CascaderRef};}
参考👉 Cascader 级联选择器 | Element Plus