vue3.0 如何获得引用element plus的messagebox模板如何写回调函数
- 1.比如找到官网的这个messagebox,复制原文,然后我们来试一试如何添加回调函数吧
<script lang="ts" setup> import { ElMessage, ElMessageBox } from 'element-plus' const open = () => { ElMessageBox.confirm( 'proxy will permanently delete the file. Continue?', 'Warning', { confirmButtonText: 'OK', cancelButtonText: 'Cancel', type: 'warning', } ) .then(() => { ElMessage({ type: 'success', message: 'Delete completed', }) }) .catch(() => { ElMessage({ type: 'info', message: 'Delete canceled', }) }) } </script>
2.我们来看官网对于callback使用的说明:
这里说清楚了,回调函数有2个参数,一个是action,一个是instance,那们来添加一下:
<script lang="ts" setup> import { ElMessage, ElMessageBox } from 'element-plus' import {getDepart} from '../apis/depart' export default { setup(){ const datapa=reactive({ formData:{ depart:"" //depart默认值 } }) } } const open = () => { ElMessageBox.confirm( 'proxy will permanently delete the file. Continue?', 'Warning', { confirmButtonText: 'OK', cancelButtonText: 'Cancel', type: 'warning', callback:(action,instance)=>{ if(action==="confirm"){ let data={"depart","deparment_1"} //注意使用Promise时,给后端传参的数据类型必须是object类型的 getDepart(data).then(res=>{ datapa.formData.depart=res["depart"] }) } } } ) .then(() => { ElMessage({ type: 'success', message: 'Delete completed', }) }) .catch(() => { ElMessage({ type: 'info', message: 'Delete canceled', }) }) } //导出所有的方法 return{ open //导出open方法 } </script>
搞定了!
分类:
vue
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)