当前位置: 首页 > news >正文

element-plus版本过老,自写选项弹框增删功能


title: element-plus版本过老,自写选项弹框增删功能
date: 2024-10-31 10:53:18
tags: element-plus

1.情景

发现代码怎么都用不了el-select的#footer插槽从而实现不了相关的操作,发现el-select自带的管理相关数据的属性popper-class用不了。

2.原因与方案

1.版本不是很新,用不了相关的插槽,更新element-plus的同时记得还要更新vite,要不然可能会报错。还有第二种方法,自写相关的方法。

2.popper-class直接用不了相关的css属性,具体原因不明,但是有具体解决方法,就是去掉scope。

3.自写代码

<el-dialogv-model="showContestDialog"@closed="showContestDialog = false"style="width: 370px; height: 535px"title="比赛与奖项":align-center="true"><div style="margin-bottom: 30px" class="select-container"><span>比赛:</span><el-selectv-model="selectContent"placeholder="比赛信息"style="width: 320px; margin-right: 20px; max-height: 1000px"filterableclass="custom-select"popper-class="custom-popper"><div class="select-options-container"><el-optionv-for="item in contestNames":key="item":label="item":value="item"><div style="display: flex; justify-content: space-between"><span>{{ item }}</span><el-buttonsize="small"type="danger"plain@click.stop="confirmDelete(item)">X</el-button></div></el-option><el-option disabled label="暂无更多数据" /></div><div class="select-footer"><el-buttonv-if="!isAddingContent"size="small"textbg@click="onAddContent">增加比赛</el-button><div v-else><el-inputv-model="addContentName"style="width: 100%; margin-bottom: 10px"placeholder="请输入新比赛名称"size="small"/><el-buttontype="primary"size="small"@click="onConfirmAddContent">确认</el-button><el-button size="small" @click="clearAddContent">取消</el-button></div></div></el-select></div><div class="select-container"></div><span>奖项:</span><el-selectv-model="selectAward"placeholder="比赛信息"style="width: 320px"filterablepopper-class="custom-popper"class="custom-select":disabled="!selectContent"><div class="select-options-container"><el-optionv-for="item in awardsNames":key="item":label="nameScore(item)":value="item"><div style="display: flex; justify-content: space-between"><span>{{ item }}</span><el-buttonsize="small"type="danger"plain@click.stop="confirmDeleteAward(item)">X</el-button></div></el-option><el-option disabled label="暂无更多数据" /></div><div class="select-footer"><el-buttonv-if="!isAddingAward"textbgsize="small"@click="onAddAward">增加奖项</el-button><template v-else><span>奖项:</span><el-inputv-model="addAwardName"style="width: 35%; margin-bottom: 5px; margin-right: 10px"placeholder="请输入奖项字符"size="small"/><span>分数:</span><el-inputv-model="addAwardNameScore"style="width: 35%; margin-bottom: 5px"placeholder="请输入积分数字"size="small"/><el-button type="primary" size="small" @click="onConfirmAddAward">确定</el-button><el-button size="small" @click="clearAddAward">取消</el-button></template></div></el-select></el-dialog>

样式部分

<style lang="scss">.select-container {position: relative;
}.select-options-container {min-height: 20px;// max-height: 300px; /* 设置最大高度,超出则显示滚动条 */// overflow-y: auto; /* 添加垂直滚动条 */padding-bottom: 60px;// scrollbar-width: thin;// scrollbar-color: #f5f5f5 #fff; /* 滚动条轨道和滑块的颜色 */
}/* 这个内容给出来是用来展示全部的选项的,要是没有相关需求可以注释掉 */
.custom-popper {.el-scrollbar__wrap {max-height: initial;overflow: visible; //超出部分不滚动,直接显示}.el-scrollbar__thumb {display: none; //去掉右侧滚动条}
}.custom-popper .el-scrollbar__wrap {overflow-y: hidden; /* 允许垂直滚动 */overflow-x: hidden; /* 隐藏水平滚动条 */
}.select-footer {/* 自定义底部内容样式 */padding: 5px;border-top: 1px solid #e0e1e3;background-color: #fff;position: absolute;bottom: 0;width: 100%;z-index: 10; /* 确保自定义底部内容在弹出层之上 */
}
</style>
http://www.lryc.cn/news/474476.html

相关文章:

  • Python毕业设计选题:基于django+vue的宠物寄养平台的设计与实现
  • 计算机后台服务-更新下载,重启————未来之窗行业应用跨平台架构
  • springcloud通过MDC实现分布式链路追踪
  • logback日志级别动态切换四种方案
  • AI视频管理平台中使用目标检测模型中的NMS参数原理及设置原则
  • 从零开始点亮一个LED灯 —— keil下载、新建工程、版本烧录、面包板使用、实例代码
  • [pdf,epub]105页《分析模式》漫谈合集01
  • 计算机网络5层模型
  • Python毕业设计选题:基于Python的无人超市管理系统-flask+vue
  • WindowsDocker安装到D盘,C盘太占用空间了。
  • Java面试经典 150 题.P80. 删除有序数组中的重复项 II(004)
  • 【Three.js】SpriteMaterial 加载图片泛白,和原图片不一致
  • 了解神经网络中的激活函数
  • 配置BGP与IGP交互和路由自动聚合示例
  • 代码随想录算法训练营第三十三天 | 62.不同路径 63.不同路径
  • 使用Flask构建RESTful API
  • 基于springboot的Java学习论坛平台
  • Python离线环境搭建
  • windows下kafka使用出现的问题
  • ctfshow文件包含web78~81
  • 鸿蒙生态认识
  • Hadoop-004-Big Data Tools插件的使用
  • linux8在线扩容/home目录
  • 【C/C++】模拟实现strcpy
  • 网络编程番外——IO多路复用的应用说明
  • 【Java爬虫的淘宝寻宝记】—— 淘宝商品类目的“藏宝图”
  • 探索Python文档自动化的奥秘:揭开docxtpl库的神秘面纱
  • RabbitMQ的解耦、异步、削峰是什么?
  • 4:arm汇编语言4:bits/byte的介绍(ASCII码)与二进制补位
  • C++实现仿安卓线程Handler、Message、Looper的功能