【Element-UI】vue使用 this.$confirm区分取消与关闭,vue给this.$confirm设置多个按钮

在使用this.$confirm过程中经常会遇到将取消按钮修改成其他的按钮去执行,如果直接使用catch会出现右上角以及遮罩层关闭也会执行,所以需要做个区分
如遇到两个按钮可以用取消按钮作为第二个按钮如果是出现多个按钮就不支持了

vue使用 this.$confirm时区分取消与右上角关闭和弹窗关闭

html代码

<template><el-button type="text" @click="open">点击打开 Message Box</el-button>
</template>

js代码

<script>export default {methods: {open() {this.$confirm('检测到未保存的内容,是否在离开页面前保存修改?', '确认信息', {distinguishCancelAndClose: true,confirmButtonText: '保存',cancelButtonText: '放弃修改'}).then(() => {this.$message({type: 'info',message: '保存修改'});}).catch(action => {this.$message({type: 'info',message: action === 'cancel'? '放弃保存并离开页面': '停留在当前页面'})});}}}
</script>

全部代码

<template><el-button type="text" @click="open">点击打开 Message Box</el-button>
</template><script>export default {methods: {open() {this.$confirm('检测到未保存的内容,是否在离开页面前保存修改?', '确认信息', {distinguishCancelAndClose: true,confirmButtonText: '保存',cancelButtonText: '放弃修改'}).then(() => {this.$message({type: 'info',message: '保存修改'});}).catch(action => {this.$message({type: 'info',message: action === 'cancel'? '放弃保存并离开页面': '停留在当前页面'})});}}}
</script>

vue给this.$confirm设置多个按钮

Vue中使用this.confirm时,虽然默认只提供了确认和取消两个按钮,但您可以通过自定义Vue.prototype上的confirm方法或者直接使用第三方UI库(如Element UI、Vuetify等)提供的API来自定义对话框,以包含更多的操作按钮。以下是一个基于Element UI的示例,展示如何在this.$confirm中设置多个操作按钮:

使用Element UI自定义确认对话框
Element UI并没有直接提供在this.$confirm中设置多个按钮的选项,但您可以使用el-dialog组件来自定义一个具有多个操作按钮的对话框。下面是一个基本示例:

HTML代码

<template><el-dialog:title="'系统提示'":visible.sync="dialogVisible"width="30%"@close="handleClose"><p>页面内已存在正在编辑的模型</p><span slot="footer" class="dialog-footer"><el-button @click="handleEdit">继续编辑</el-button><el-button @click="handleCreateNew">创建新模型</el-button><el-button @click="handleClose">关闭</el-button></span></el-dialog>
</template>

js代码

<script>
export default {data() {return {dialogVisible: false,};},methods: {// 显示自定义对话框showDialog() {this.dialogVisible = true;},// 继续编辑操作handleEdit() {this.$emit('update', { page_id: this.page_id });this.dialogVisible = false;},// 创建新模型操作handleCreateNew() {this.add_page();this.dialogVisible = false;},// 关闭对话框handleClose() {this.dialogVisible = false;},},
};
</script>

全部代码

<template><el-dialog:title="'系统提示'":visible.sync="dialogVisible"width="30%"@close="handleClose"><p>页面内已存在正在编辑的模型</p><span slot="footer" class="dialog-footer"><el-button @click="handleEdit">继续编辑</el-button><el-button @click="handleCreateNew">创建新模型</el-button><el-button @click="handleClose">关闭</el-button></span></el-dialog>
</template><script>
export default {data() {return {dialogVisible: false,};},methods: {// 显示自定义对话框showDialog() {this.dialogVisible = true;},// 继续编辑操作handleEdit() {this.$emit('update', { page_id: this.page_id });this.dialogVisible = false;},// 创建新模型操作handleCreateNew() {this.add_page();this.dialogVisible = false;},// 关闭对话框handleClose() {this.dialogVisible = false;},},
};
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/866082.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

此文助您了解客户情况,通常如何判断客户需求是否靠谱!

https://doc.youyacao.com/117/2164 此文助您了解客户情况&#xff0c;通常如何判断客户需求是否靠谱&#xff01; 正确沟通客户 &#xff0c;此文助您了解客户情况&#xff0c;通常如何判断客户需求是否靠谱&#xff01;正确沟通客户&#xff0c;节约宝贵时间&#xff0c;不…

laravel+phpoffice+easyexcel实现导入

资源包下载地址 https://download.csdn.net/download/QiZong__BK/89503486 easy-excel下载&#xff1a; "dcat/easy-excel": "^1.0", 命令行&#xff1a; composer require dcat/easy-excel 前端代码 <!doctype html> <html lang"en&…

学习伦敦金技术分析的具体步骤是什么?

技术分析是我们分析伦敦金市场的重要工具&#xff0c;刚入市就面对时涨时跌的市场应该如何交易呢&#xff1f;投资者如果不掌握技术分析的方法&#xff0c;恐怕对这个问题会没有头绪。入场都没有&#xff0c;盈利就更加无从谈起了。而学习技术分析&#xff0c;是有不同的阶段、…

ActiViz中的图像裁剪vtkImageClip

文章目录 简介一、功能特点二、裁剪区域设置三、标量值裁剪四、与其他VTK组件的集成五、使用示例六、高级配置七、 常见问题与解决方案八、 性能优化技巧简介 vtkImageClip 是 Visualization Toolkit (VTK) 库中用于图像处理的一个关键组件。它主要负责裁剪图像数据集,以便用…

Linux之文本三剑客

Linux之三剑客 Linux的三个命令,主要是用来处理文本,grep,sed,awk,处理日志的时候使用的非常多 1 grep 对文本的内容进行查找 1) 基础用法 语法 grep 选项 内容|正则表达式 文件选项: -i 不区分大小写 -v 排除,反选 -n 显示行号 -c 统计个数查看文件里包含有的内容 [roo…

PE文件学习

一、介绍 PE文件&#xff0c;即Portable Executable文件&#xff0c;是一种标准的文件格式&#xff0c;主要用于微软的Windows操作系统上。这种格式被用来创建可执行程序&#xff08;如.exe文件&#xff09;、动态链接库&#xff08;.DLL文件&#xff09;、设备驱动&#xff0…

每日一练:攻防世界:Hidden-Message

追踪UDP数据流&#xff0c;没有任何隐藏信息&#xff1a; WP&#xff1a; 观察流量包 每个流的唯一的区别就是UDP的源地址srcport的最后一位在变化 都提取出来就是二进制序列 用tshark提取一下 //使用tshark过滤出源端口&#xff0c;使用cut裁取端口的最后一位 tshark -r 8…

金融(基金)行业信创国产化特点及统一身份认证解决方案

金融业在政策支持及自主驱动下&#xff0c;金融信创取得快速发展。从2020年开始&#xff0c;三期试点已扩容至5000余家&#xff0c;进入全面推广阶段。而基金行业信创建设与银行、证券、保险这些试点行业相比&#xff0c;进展较为缓慢。 基金行业信创当前面临的问题 与多家基…

开源的基于图像识别本地实名认证系统(本项目不借助任何api) v1.0

前言: 本项目主要是代替昂贵的实名认证服务api或者sdk&#xff0c;目前仍然存在很多缺点 一、具体介绍 1.组成: 人脸识别服务器分为两部分: (1)、http服务端 server.py共有四个函数: DrawFaceinIdCard:用户上传身份证图片后&#xff0c;服务端会对身份证进行抠人像和ocr处理…

[2024]docker-compose实战 (1)前言

前言 本文用来记录使用docker-compose来实战搭建一个多项目的测试环境. 环境中包含nodejs, php, html, redis, MongoDB, mysql. 在本次部署流程中, 尽量保证原镜像的"干净简洁", 尽量不会往镜像中加入各种软件和插件, 所有的配置尽可能的在宿主机映射进去. 项目…

互联网摸鱼日报(2024-07-03)

互联网摸鱼日报(2024-07-03) 36氪新闻 A股创纪录分红2.23万亿&#xff0c;两亿投资者如何掘金&#xff1f; 小米OV背后的隐秘功臣&#xff1a;揭ODM巨头华勤发家史 看麻了&#xff1a;日本科学家盯上“活人皮” 抛弃可口可乐的年轻人正在爱上无糖茶饮料 6月新能源交付量&a…

基于改进高斯-拉普拉斯滤波器的一维时间序列平滑与降噪(MATLAB)

以图像处理为例&#xff0c;拉普拉斯算子是基于图像的二阶导数来找到边缘并搜索过零点&#xff0c;传统的拉普拉斯算子常产生双像素宽的边缘&#xff0c;对于较暗区域中的亮斑进行边缘检测时&#xff0c;拉普拉斯运算就会使其变得更亮。因此&#xff0c;与梯度算子一样&#xf…

尺度变换挑战:深入解析目标检测中的尺度变化问题

尺度变换挑战&#xff1a;深入解析目标检测中的尺度变化问题 目标检测是计算机视觉领域的一个核心任务&#xff0c;它旨在识别图像中的目标并确定它们的位置。然而&#xff0c;目标检测算法在实际应用中常常面临尺度变化问题&#xff0c;即目标在图像中的大小可能差异巨大&…

OpenCV——实现裁剪YOLO格式的图片目标并按图片名保存

import os import cv2def crop_image(image_path, label_path, output_folder):# 读取图片img cv2.imread(image_path)height, width, _ img.shape# 读取标签文件with open(label_path, r) as file:labels file.readlines()img_id 1# 遍历每个标签for label in labels:part…

如何提高实验室分析结果的准确性呢

要提高实验室分析结果的准确性&#xff0c;可以从以下几个方面着手&#xff1a; 1、选择合适的实验方法 不同的实验方法具有不同的优缺点&#xff0c;实验方法的准确度直接影响测定结果的准确度。因此&#xff0c;在选择实验方法时&#xff0c;需要根据实验目的、实验原理、实…

spring security + vue,登录功能

前端代码&#xff1a;https://gitee.com/forgot940629/vuelogin 后端代码&#xff1a;https://gitee.com/forgot940629/springbootloginv2 参考代码&#xff1a;https://github.com/PuZhiweizuishuai/SpringSecurity-JWT-Vue-Deom 基于前后端分离实现登录功能。登录成功后后端向…

Java for循环倒序输出

1.实现一个for循环的倒序输出 在Java中&#xff0c;要实现一个for循环的倒序输出&#xff0c;通常我们会使用数组或集合&#xff08;如ArrayList&#xff09;作为数据源&#xff0c;然后通过倒序遍历这个数组或集合来实现。下面&#xff0c;我将给出一个详细的示例&#xff0c…

Linux高并发服务器开发(十一)UDP通信和本地socket通信

文章目录 1 TCP和UDP的区别2 UDPAPI流程服务端流程客户端流程 代码服务端客户端 3 本地socket通信服务端客户端客户端代码 1 TCP和UDP的区别 2 UDP API 流程 服务端流程 客户端流程 代码 服务端 #include<sys/socket.h> #include<stdio.h> #include<arpa/in…

二叉树与堆相关的时间复杂度问题

目录 满二叉树与完全二叉树高度h和树中节点个数N的关系 向上调整算法&#xff1a; 介绍&#xff1a; 复杂度推导&#xff1a; 向下调整算法&#xff1a; 介绍&#xff1a; 复杂度推导&#xff1a; 向上调整建堆&#xff1a; 介绍&#xff1a; 复杂度推导&#xff1a;…

Redis 集群 三主三从 主节点之间数据不会同步说明

Redis 集群中有一个特性&#xff0c;它不使用强一致性模型&#xff0c;而是使用最终一致性。Redis 集群通过分区 (sharding) 的方式来存储数据&#xff0c;不同的键可能会被存储在不同的节点上。每个键通过一个哈希槽 (hash slot) 来决定应该被存储到哪个节点上。一个 Redis 集…