前言

今天做自己项目的时候,有一个删除的业务,正好遇到了确认框,在此纪念一下。

这里我是使用的ElementUI的确认框!

首先ElementUI的确认框是这么说明的:

从场景上说,MessageBox 的作用是美化系统自带的 alert、confirm 和 prompt,因此适合展示较为简单的内容。如果需要弹出较为复杂的内容,请使用 Dialog

调用$confirm方法即可打开消息提示,它模拟了系统的 confirm。Message Box 组件也拥有极高的定制性,我们可以传入options作为第三个参数,它是一个字面量对象。type字段表明消息类型,可以为success,error,info和warning,无效的设置将会被忽略。注意,第二个参数title必须定义为String类型

我们先看下原生ElementUI提供的确认框是什么样的吧:

官网地址:Element确认框

我们点击看下长什么样子:

原生代码:

<template><el-button type="text" @click="open">点击打开 Message Box</el-button>
</template><script>export default {methods: {open() {this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning'}).then(() => {this.$message({type: 'success',message: '删除成功!'});}).catch(() => {this.$message({type: 'info',message: '已取消删除'});          });}}}
</script>

官网提供给我我们使用说明和基本使用,下面我将按照官网的基础进行一些小小的升级和改造,顺便告诉大家一些使用技巧。

元素代码

按钮上的代码比较简单,直接从element-ui使用复制即可

注意,这里有个坑,单机事件的方法名不能叫delete,这是一个关键词,不能使用,需要换一个名子,所以我才选择handleDelete!!!

这里我给方法传递了一个参数:scope.row,可以通过它获取这一行的全部数据,从而给后端传递相关的参数进行逻辑处理。

  <el-table-column fixed="right"  label="操作"  width="220" align="center" ><template slot-scope="scope"> <el-button @click="handleDelete(scope.row)" type="danger" icon="el-icon-delete" size="small" >删除</el-button><el-button type="warning" icon="el-icon-edit" size="small">编辑</el-button></template></el-table-column>

js代码

js相关的代码也十分简单。相关注释写在代码里面了,确认框提示的文案可以自由切换哦!

以下是我觉得重要且基本的一些属性:

代码如下:

  // 删除handleDelete(row) {// 确认框确认是否要删除this.$confirm("确定要删除"+row.userName+"吗?", "删除提示", {iconClass: "el-icon-question", //自定义图标样式confirmButtonText: "残忍删除", //确认按钮文字cancelButtonText: "留你小命", //取消按钮文字showClose: true, //是否显示右上角关闭按钮type: "warning", //提示类型  success/info/warning/error}).then(res=> {  //选择确认按钮进入此方法//确认操作alert('确认')}).catch(() => { //选择取消按钮进入此方法//取消操作alert('取消')});    }

效果演示

这样一个确认框就写好了,我们可以根据点击确认或者取消进行不同的逻辑操作

然后我们页面上测试一下吧

确认

首先是确认操作

取消

然后是取消操作

扩充

这里还有一个属性:center

确认框文字是否居中,改为true即可居中,默认false

我个人觉得居中后太丑了。所以就没加到上面代码,大家知道即可,效果如下:

ps:不止这一个属性我没提到或者用到,还有很多属性,element-ui给我们提供了很多属性,大家根据孫的需求灵活运用即可,我上面说的都是我觉得最基本的属性。

删除逻辑编写

前端代码

这里写一个完整的删除逻辑,首先是前端代码,在刚才的代码基础上完善逻辑,使用axios发送请求并携带参数。

删除完之后一定要刷新列表哦,不然不容易发现数据变化!

关于如何封装一个公共的数据列表动态展示方法,可以参考:Vue使用Element-UI的table组件和后端接口进行数据交互

这里axios我用的是原生的,没有进行封装。因为后端崽目前还没学会!

 // 删除handleDelete(row) {// 确认框确认是否要删除this.$confirm("确定要删除"+row.userName+"吗?", "删除提示", {iconClass: "el-icon-question", //自定义图标样式confirmButtonText: "残忍删除", //确认按钮文字cancelButtonText: "留你小命", //取消按钮文字showClose: true, //是否显示右上角关闭按钮type: "warning", //提示类型  success/info/warning/error}).then(res=> {  //选择确认按钮进入此方法//确认操作 请求删除接口axios.get('http://localhost:9090/user/delete', {// 传递的参数params: {id:row.id //id,从row获取当前行的用户id}// 回调函数,一定要使用箭头函数,不然this的指向不是vue示例}).then(res =>{// 删除成功if(res.data.status===200){// 删除成功提示this.$message({showClose: true, message: '删除成功!',type: 'success', duration:1000,center:true});// 重新刷新最新的用户列表this.queryUserList();}}).catch(error =>{console.log(error)})}).catch(() => { //选择取消按钮进入此方法//取消操作});    }

后端代码

前端代码写好了当然离不开服务器接口的支撑,由于这是我自己写的项目,所以我的后端直接用MybatisPlus自带的删除(逻辑删除)就可以啦

效果演示

前后端代码都写好了,咱们就可以演示一波了。这里随便找一个幸运儿进行删除,这里我就拿第一行开刀了!

点击确认,数据消失!

总结

总的来说,使用起来还是很简单的。后面遇到什么情况,再回来补充!

Vue使用ElementUI的确认框进行删除操作(包含前后端代码)相关推荐

  1. elementui 上传请求头_element-ui上传组件多个文件同时上传请求一次后台接口(前后端代码版)...

    记录时间 2020年10月27日 22点38分 前言 在使用element-ui上传组件上传多个文件时,出现多个文件对应着多个请求,比如你要上传3个文件,那么将请求3个后台接口,这样会无形之中增加了后 ...

  2. 视频教程-Vue、Spring Boot开发小而完整的Web前后端分离项目实战-Java

    Vue.Spring Boot开发小而完整的Web前后端分离项目实战 3年多.net开发经验:5年的java后端开发经验,熟悉行.net,java流行技术,拥有多个.net,java web企业级应; ...

  3. vue 后台返回的文件流进行预览_vue实现下载文件流完整前后端代码

    这篇文章主要为大家详细介绍了vue实现下载文件流完整前后端代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 使用Vue时,我们前端如何处理后端返回的文件流 首先后端返 ...

  4. 黑加仑妞 使用vue+flask做全栈开发的全过程(实现前后端分离)

    黑加仑妞 使用vue+flask做全栈开发的全过程(实现前后端分离) 花了几天的时间终于在本地把前后端跑通了,以一篇博客记录我这几天的心酸... 1.安装nodejs(自带npm,可能会出现版本错误, ...

  5. 【富文本编辑器功能】vue实现富文本编辑器Tinymce功能,保留编辑器格式文章展示在页面上【前后端代码展示,简单好用】

    前言: 这个Tinymce富文本编辑器是vue-element-admin内集成好的,使用过后体验非常不错,很简单易用.这里分享一下,同时又看到了网上帖子都没什么人写前后端同时展示的,很多人想知道编辑 ...

  6. Vue+Spring Boot实现图片验证码、邮箱验证码以及Cookie记住我功能(前后端代码详解)

    Vue实现图片验证码.邮箱验证码以及Cookie记住我功能 前言 图片验证码实现 Vue前端实现 Spring Boot后端实现 邮箱验证码实现 Vue前端实现 Spring Boot后端实现 Coo ...

  7. vue项目内封装axios.,使用Mock,搭建前后端分离环境。Axios + Promise + Mock

    1.安装Mock npm install mockjs --save-dev 1.1加入相关Mock代码 在SRC目录下创建文件夹mock,在里面创建虚拟接口地址及数据: // mock/index. ...

  8. spring boot + vue 使用poi实现Excel导出功能(包括Excel样式调整,以及前后端代码)

    可以直接复制拿来用哟.(#^.^#) 目录 一.pom.xml依赖 二.代码大致流程是这样的 三.后端工具类 四.基于vue,使用axios调用后端接口,实现下载文件的方法 五.看效果 一.pom.x ...

  9. vue 公用组件开发 确认框confirm

    文件目录: github地址:https://github.com/xingkongwuyu/vue-spa-experience/tree/master/src/components 最终的效果: ...

最新文章

  1. 兹介绍我校计算机科学与技术,清华大学计算机科学与技术系
  2. python程序从哪里开始执行-python如何启动
  3. mongoDB条件操作符
  4. 【Android FFMPEG 开发】FFMPEG 获取 AVStream 音视频流 ( AVFormatContext 结构体 | 获取音视频流信息 | 获取音视频流个数 | 获取音视频流 )
  5. python一到10整数的平方和_零基础学python_10_列表(创建数值列表 )
  6. C#中ManualResetEvent用法简介
  7. 工作121:[““]进行变量赋值
  8. hive创建分区表 指定分隔符_HIVE 对于分区表的操作
  9. [设计模式-创建型]抽象工厂(Abstract Factory)
  10. 国内pinterest模式昙花一现 社交电商不该这么玩
  11. FFMpeg新旧接口之间的一些对应关系
  12. 现代数字图像处理作业----用维纳滤波器进行图像复原
  13. JavaScript设计模式之享元模式
  14. 从零开始玩PT-新人指南
  15. TryHackMe - Thompson靶场
  16. Pytorch 损失函数 Mean Squared Error
  17. 从相机相册获取图片裁剪后用于评论晒图或更换背景图
  18. 微软2019 Windows 10更新五月版:10个不可错过的新功能
  19. dubbo整体设计整理
  20. 决策树的生成之ID3与C4.5算法

热门文章

  1. 百变小精灵,CRMEB Java 单商户系统也要当!
  2. Centos7中systemd-journald占用内存过高的解决办法
  3. IOS – OpenGL ES 图像CGA色彩滤镜 GPUImageCGAColorspaceFilter
  4. mysql的alter语句中modify,rename,change详解
  5. html5 设置设备震动,HTML5+ - 拨打电话、保持屏幕唤醒、设备震动
  6. 对话机器人 多轮对话_与我的少年有关互联网的对话
  7. Fabric安装中make release无法编译问题解决 no required module provides package
  8. 2022-2027年中国老年健康服务行业发展监测及投资战略研究报告
  9. 转 李开复微博爆谷歌公开C++编码规范 称全球最好
  10. vue中调用百度地图实现搜索等功能