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

ElMessageBox消息确认框组件在使用时如何设置第三个或多个自定义按钮

ElMessageBox自带两个按钮一个确认一个取消,当还想使用该组件还想再加个功能组件时,就需要自定义个按钮加到组件里
第二种方法可以通过编写自定义弹窗来完成,个人觉得代码量增多过于繁琐,当然也可以实现
 

先定义方法负责获取dom父节点,创建新的子元素加入进去,写业务逻辑并且关闭提示框

const appendChildToBtns = () => {// 获取div元素let btns: any = document.querySelector(".el-message-box__btns");// 创建一个新的btn元素let btn = document.createElement("button");// 为btn元素设置文本内容 添加饿了么组件按钮样式classbtn.className = "el-button el-button--default el-button--small";btn.textContent = "取消";// 将btn元素添加到btns中btns.appendChild(btn);// 点击按钮关闭提示框btn.onclick = () => {ElMessageBox.close();};
};

使用例子 绑定表格删除按钮事件

const click_Delete = (row: any) => {
//这里使用延迟,确保能获取到父元素domsetTimeout(() => {appendChildToBtns();}, 100);ElMessageBox.confirm("是否删除该资源组及其子节点?", "提示", {confirmButtonText: "删除子节点",cancelButtonText: "删除资源组",type: "warning",
//是否将取消(点击取消按钮)与关闭(点击关闭按钮或遮罩层、按下 Esc 键)进行区分distinguishCancelAndClose: true,}).then(() => {proxy.axios.delete(`/pcadmin/regulator-permission-manage/resource-groups/${row.id}?deleteChildren=true`).then(({ data }: { data: any }) => {if (data.errorcode == 0) {ElMessage.success("删除子节点成功!");get_TreeData_List();get_ResourceGroup_List();}}).catch((err: any) => {console.error(err);ElMessage.error(err);});}).catch((action: Action) => {
//根据按钮执行不同业务if (action === "cancel") {proxy.axios.delete(`/pcadmin/regulator-permission-manage/resource-groups/${row.id}?deleteChildren=false`).then(({ data }: { data: any }) => {if (data.errorcode == 0) {ElMessage.success("删除资源组成功!");get_TreeData_List();get_ResourceGroup_List();}}).catch((err: any) => {console.error(err);ElMessage.error(err);});}});};

http://www.lryc.cn/news/434753.html

相关文章:

  • javaWeb【day04】--(MavenSpringBootWeb入门)
  • [Linux]:文件(下)
  • 【学习笔记】手写Tomcat 一
  • springboot基础-Druid数据库连接池使用
  • C语言文件操作全攻略:从打开fopen到读写r,w,一网打尽
  • 【0328】Postgres内核之 “User ID state”
  • VisualStudio环境搭建C++
  • linux 文件压缩并且切割压缩
  • 支持iPhone 16新品预售,饿了么同步上线专人配送等特色服务
  • 低光增强效果展示
  • 李诞-2021.8脱口秀工作手册-11-pitch your idea把一个想法扎进别人脑子里;专业,做足准备,给选择option!
  • vue3 自定义指令 directive
  • 为什么腾讯难以再现《黑神话:悟空》这样的游戏大作?
  • C# WPF燃气报警器记录读取串口工具
  • 【IEEE独立出版 | 往届快至会后2个月检索,刊后1个月检索】2024年第四届电子信息工程与计算机科学国际会议(EIECS 2024)
  • FPGA实现串口升级及MultiBoot(三)FPGA启动加载方式
  • Linux驱动(六):Linux2.6驱动编写之平台设备总线
  • 回溯——11.重新安排行程
  • python+pytest+request 接口自动化测试
  • 《JavaEE进阶》----10.<SpringMVC应用分层:【三层架构】>
  • 【网络】网络通信的传输方式
  • 数据仓库理论知识
  • 容易中、见刊快的6本医学期刊推荐!
  • nnunetv2系列:使用默认的预测类推理2D数据
  • 伺服电机如何计算扭矩——看这一篇就够了
  • 数据库C语言删除修改和输出
  • 插槽slot
  • 交换技术是一种在计算机网络和通信系统中广泛应用的关键技术,它主要通过交换设备(如交换机、路由器等)实现数据的转发和传输
  • 数仓建模:数仓设计中的10个陷阱
  • Vue如何将网页转换成图片或PDF并上传