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>
相关推荐
折哥的程序人生 · 物流技术专研5 小时前
第4篇:Lambda 简化策略模式(Java 8+)
java·设计模式·策略模式·函数式编程·lambda·代码简化·扩充系列
researcher-Jiang5 小时前
高性能计算之OpenMP——超算习堂学习1
android·java·学习
随风一样自由6 小时前
【前端独角兽】刚进入前端领域的前端开发用jQuery还是Vue3?
前端·javascript·vue3·jquery
IMPYLH7 小时前
HTML 的 <data> 元素
前端·html
西门吹-禅7 小时前
java springboot N+1问题
java·开发语言·spring boot
YHHLAI7 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
DLYSB_7 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
weixin_BYSJ19878 小时前
SpringBoot + MySQL 乒乓球运动员信息管理系统项目实战--附源码04954
java·javascript·spring boot·python·django·flask·php
AI小码8 小时前
LLM 应用的缓存工程:当每次 API 调用都在燃烧成本
java·人工智能·spring·计算机·llm·编程·api
Hui Baby8 小时前
Spring Security
java·后端·spring