【前端求助帖】关于使用element-plus select 模板嵌套popover中使用select选择后,上一个select自动关闭的问题

先看下效果

主页代码如下

项目使用的是Vue3+vite, 下载后,直接pnpm i安装依赖, pnpm dev 就是可以跑起来

<el-button type="warning" round @click="openDia">打开弹框</el-button>
        <el-dialog v-model="dialogTableVisible" title="业务" width="800">
            <el-select v-model="value" placeholder="Select" @visible-change="visibleChange">
                <template #empty>
                    <div style="padding:15px;">
                        <div class="select-header">
                            <helloWord></helloWord>
                        </div>
                        <el-table :data="tableData" style="width: 100%">
                            <el-table-column prop="date" label="Date" width="180" />
                            <el-table-column prop="name" label="Name" width="180" />
                            <el-table-column prop="address" label="Address" />
                        </el-table>
                    </div>
                </template>
            </el-select>
        </el-dialog>

代码解释,点击按钮,弹窗一个框,框里面有个下拉框,下拉框里面使用的是空模板-插槽

插槽中有一个二级组件和表格显示。

组件代码

<script setup>
    import { ref } from 'vue'
    import { Filter } from '@element-plus/icons-vue'
    const filterObjLength = ref(-1);
    const openFilter = () => { };
    const value = ref("A");
</script>

<template>
    <el-popover placement="right" :width="400" trigger="click" :teleported="false">
        <template #reference>
            <el-button :icon="Filter"></el-button>
        </template>
        <el-select v-model="value" placeholder="Select">
            <el-option value="A">A</el-option>
            <el-option value="B">B</el-option>
            <el-option value="C">C</el-option>
        </el-select>
    </el-popover>
</template>

<style scoped>
    .read-the-docs {
        color: #888;
    }
</style>

组件中是一个弹窗框,通过点击按钮显示这个框,这个框里面是一个select下拉框。

问题:

在组件中,选择这个select下拉框,例如选择B,选择后后关闭最上面的那个select,也就是使用空插槽的select。

个人能力有限实在找不到问题和解决办法了, 求教各位前端大佬帮帮忙。

源码文件:demo下载

小弟再次跪谢了。

相关推荐
一只月月鸟呀26 分钟前
Vue 过滤器 filter(s) 的使用
javascript·vue.js·ecmascript
秋月华星2 小时前
【flutter】TextField输入框工具栏文本为英文解决(不用安装插件版本
前端·javascript·flutter
—Qeyser3 小时前
用Deepseek写一个 HTML 和 JavaScript 实现一个简单的飞机游戏
javascript·游戏·html
青红光硫化黑3 小时前
React基础之React.memo
前端·javascript·react.js
GDAL4 小时前
better-sqlite3之exec方法
javascript·sqlite
匹马夕阳5 小时前
基于Canvas和和原生JS实现俄罗斯方块小游戏
javascript·canva可画
m0_616188495 小时前
Vue3 中 Computed 用法
前端·javascript·vue.js
六个点5 小时前
图片懒加载与预加载的实现
前端·javascript·面试
weixin_460783875 小时前
Flutter解决TabBar顶部页面切换导致页面重载问题
android·javascript·flutter
逍遥客.6 小时前
uniapp对接打印机和电子秤
javascript·vue.js·uni-app