Vue+ElementUI操作确认框及提示框的使用

在进行数据增删改查操作中为保证用户的使用体验,通常需要显示相关操作的确认信息以及操作结果的通知信息。文章以数据的下载和删除提示为例进行了简要实现,点击下载以及删除按钮,会出现对相关信息的提示,操作结果如下所示。

点击删除按钮,将会显示以下提示框。

点击取消按钮,提示已取消删除。

点击确定按钮,若删除成功则提示如下,删除失败则同理。

通过$this.confirm弹出操作提示界面,实现操作的确认。

通过$this.message弹出状态提示界面,提示操作是否成功。

界面代码如下所示:

html 复制代码
<el-table-column label="操作">
	<template slot-scope="scope">
		<el-button type="primary" round @click="downloadDataset">
			<i class="el-icon-edit"></i>下载
		</el-button>
		<el-button type="success" round>
			<i class="el-icon-edit"></i>编辑
		</el-button>
		<el-button type="danger" @click="deleteDatasetById(scope.row)" round>
			<i class="el-icon-document-delete"></i>删除
		</el-button>
	</template>
</el-table-column>

script代码如下所示:

javascript 复制代码
<script>
export default {
	//删除数据集
    deleteDatasetById(param) {
      let id = param.id //当前行对应数据的id
      this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        api.deleteDatasetById(id).then(res => {
          if (res.code === 20021) {
            this.$message({
              type: 'success',
              message: '删除成功!'
            });
            this.getDatasets()
          } else {
            this.$message({
              type: 'error',
              message: '删除失败,请重试!'
            });
          }
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '已取消删除'
        });
      });
    },

    // 下载数据集
    downloadDataset() {
      this.$confirm('即将进行当前数据集的下载操作,是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'info'
      }).then(() => {
        this.$message({
          type: 'success',
          message: '下载成功!'
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '已取消下载'
        });
      })
    },
}
<script>
相关推荐
声声codeGrandMaster3 分钟前
Django框架的前端部分使用Ajax请求一
前端·后端·python·ajax·django
会飞的架狗师18 分钟前
【Spring Cloud Gateway】Nacos整合遇坑记:503 Service Unavailable
java·开发语言
重生之后端学习1 小时前
02-前端Web开发(JS+Vue+Ajax)
java·开发语言·前端·javascript·vue.js
繁依Fanyi2 小时前
用 CodeBuddy 实现「IdeaSpark 每日灵感卡」:一场 UI 与灵感的极简之旅
开发语言·前端·游戏·ui·编辑器·codebuddy首席试玩官
来自星星的坤4 小时前
【Vue 3 + Vue Router 4】如何正确重置路由实例(resetRouter)——避免“VueRouter is not defined”错误
前端·javascript·vue.js
字节源流7 小时前
关于maven的依赖下不下来的问题
java·maven
pjx9878 小时前
服务间的“握手”:OpenFeign声明式调用与客户端负载均衡
java·运维·spring·负载均衡
prinrf('千寻)8 小时前
MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
java·开发语言·mybatis
香蕉可乐荷包蛋8 小时前
浅入ES5、ES6(ES2015)、ES2023(ES14)版本对比,及使用建议---ES6就够用(个人觉得)
前端·javascript·es6
老华带你飞8 小时前
实习记录小程序|基于SSM+Vue的实习记录小程序设计与实现(源码+数据库+文档)
java·数据库·spring boot·小程序·论文·毕设·实习记录小程序