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

vue3+antd 实现点击按钮弹出对话框

格式1:确认对话框

按钮:
在这里插入图片描述

点击按钮之后:
在这里插入图片描述

完整代码:

<template><div><a-button @click="showConfirm">Confirm</a-button></div>
</template>
<script setup>
import {Modal} from "ant-design-vue";
import {createVNode} from "vue";
import {ExclamationCircleOutlined} from "@ant-design/icons-vue";const showConfirm = () => {Modal.confirm({title: 'Do you Want to delete these items?',icon: createVNode(ExclamationCircleOutlined),content: createVNode('div',{style: 'color:red;',},'Some descriptions',),onOk() {console.log('OK');},onCancel() {console.log('Cancel');},class: 'test',});
};
</script>

异步确认对话框

<template><div><a-button @click="showPromiseConfirm">With promise</a-button></div>
</template>
<script setup>
import {Modal} from "ant-design-vue";
import {createVNode} from "vue";
import {ExclamationCircleOutlined} from "@ant-design/icons-vue";function showPromiseConfirm() {Modal.confirm({title: 'Do you want to delete these items?',icon: createVNode(ExclamationCircleOutlined),content: 'When clicked the OK button, this dialog will be closed after 1 second',async onOk() {try {return await new Promise((resolve, reject) => {setTimeout(Math.random() > 0.5 ? resolve : reject, 1000);});} catch {return console.log('Oops errors!');}},onCancel() {},});
}
</script>

删除确认对话框

<template><div><a-button type="dashed" @click="showDeleteConfirm">Delete</a-button></div>
</template>
<script setup>
import {Modal} from "ant-design-vue";
import {createVNode} from "vue";
import {ExclamationCircleOutlined} from "@ant-design/icons-vue";const showDeleteConfirm = () => {Modal.confirm({title: 'Are you sure delete this task?',icon: createVNode(ExclamationCircleOutlined),content: 'Some descriptions',okText: 'Yes',okType: 'danger',cancelText: 'No',onOk() {console.log('OK');},onCancel() {console.log('Cancel');},});
};
</script>

对话框的额外属性

<template><div><a-button type="dashed" @click="showPropsConfirm">With extra props</a-button></div>
</template>
<script setup>
import {Modal} from "ant-design-vue";
import {createVNode} from "vue";
import {ExclamationCircleOutlined} from "@ant-design/icons-vue";const showPropsConfirm = () => {Modal.confirm({title: 'Are you sure delete this task?',icon: createVNode(ExclamationCircleOutlined),content: 'Some descriptions',okText: 'Yes',okType: 'danger',// pass the propsokButtonProps: {disabled: true,},cancelText: 'No',onOk() {console.log('OK');},onCancel() {console.log('Cancel');},});
};
</script>
http://www.lryc.cn/news/394408.html

相关文章:

  • Python一些可能用的到的函数系列130 UCS-Time Brick
  • Java实现布隆过滤器的几种方式
  • 最新整理的机器人相关数据合集(1993-2022年不等 具体看数据类型)
  • Python打开Excel文档并读取数据
  • 算法day03 桶排序 数据结构分类 时间复杂度 异或运算
  • k8s学习之cobra命令库学习
  • Spring框架的学习SpringMVC(1)
  • 赋值运算符重载和const成员函数和 const函数
  • VSCode设置字体大小
  • Excel中按列的首行字母顺序,重新排列(VBA脚本)
  • 多线程爬虫技术详解
  • 项目一单机安装基于LNMP结构的WordPress网站 web与数据库服务分离
  • vue事件处理v-on或@
  • 使用OpenCV与PySide(PyQt)的视觉检测小项目练习
  • 通信协议_C#实现自定义ModbusRTU主站
  • 【C语言】 —— 编译和链接
  • DNS正向解析与反向解析实验
  • 机器学习简介--NLP(二)
  • Winform中使用HttpClient实现调用http的post接口并设置传参content-type为application/json示例
  • 【RAG探索第3讲】LlamaIndex的API调用与本地部署实战
  • C# —— 日期对象
  • 【MySQL04】【 redo 日志】
  • Android线性布局的概念与属性
  • java反射介绍
  • Spring中@Transactional的实现和原理
  • 华为仓颉可以取代 Java 吗?
  • 性能测试相关理解(一)
  • 缓存-分布式锁-原理和基本使用
  • 判断国内ip
  • linux修改内核实现禁止被ping(随手记)