-
不使用
el-popover
组件,而是手动创建一个div
作为 Popover:<template> <el-table :data="tableData"> <!-- ...其他列 --> <el-table-column label="操作"> <template slot-scope="scope"> <div class="popover-trigger" @click="showPopover(scope.$index)"> 显示 Popover </div> <div class="popover" v-show="scope.row.showPopover" ref="popover"> 这里是一些内容 <el-button size="mini" @click="hidePopover(scope.$index)">关闭</el-button> </div> </template> </el-table-column> </el-table> </template>
-
使用 CSS 控制 Popover 的样式:
.popover { position: absolute; z-index: 100; background-color: #fff; border: 1px solid #ccc; padding: 10px; display: none; /* 默认不显示 */ }
-
在 Vue 方法中控制显示和隐藏:
export default { data() { return { tableData: [ // ...表格数据 { showPopover: false }, // ...其他行数据 ], }; }, methods: { showPopover(index) { const popover = this.$refs.popover[index]; const trigger = this.$el.querySelector(`.popover-trigger`); // 假设每个触发器都有这个类名 if (trigger) { popover.style.left = `${trigger.offsetLeft}px`; popover.style.top = `${trigger.offsetTop + trigger.offsetHeight}px`; popover.style.display = 'block'; } this.tableData[index].showPopover = true; }, hidePopover(index) { this.tableData[index].showPopover = false; } } };
不使用 el-popover 组件手动创建一个 div 作为 Popover
Light_102025-01-03 8:23
相关推荐
计算机-秋大田1 小时前
基于Spring Boot的兴顺物流管理系统设计与实现(LW+源码+讲解)m0_528723812 小时前
HTML中,title和h1标签的区别是什么?Dark_programmer2 小时前
html - - - - - modal弹窗出现时,页面怎么能限制滚动禾苗种树2 小时前
在 Vue 3 中使用 ECharts 制作多 Y 轴折线图时,若希望 **Y 轴颜色自动匹配折线颜色**且无需手动干预,可以通过以下步骤实现:小盼江4 小时前
水果生鲜农产品推荐系统 协同过滤余弦函数推荐水果生鲜农产品 Springboot Vue Element-UI前后端分离 代码+开发文档+视频教程初遇你时动了情4 小时前
react module.scss 避免全局冲突类似vue中scoped烂蜻蜓5 小时前
Uniapp 设计思路全分享bin91535 小时前
DeepSeek 助力 Vue 开发:打造丝滑的二维码生成(QR Code)浪九天10 小时前
Vue 不同大版本与 Node.js 版本匹配的详细参数尚学教辅学习资料11 小时前
基于SpringBoot+vue+uniapp的智慧旅游小程序+LW示例参考