Vue el-table 关于多选删除

项目的一个需求需要实现多选删除。这里记录一下自己实现的方法。


1、获取多选选中行的数据

查了官网文档中有这样一个方法可以获取选中的数据

handleSelectionChange(val) {
    this.multipleSelection = val
    console.log('多选选中的行', this.multipleSelection)
},

Tips:点击某一行,选中改行前面复选框的方法

<el-table @row-click="checkViews" ref="NodeTable" :data="list"
                    @selection-change="handleSelectionChange">
// methods中
checkViews(row){
      this.ableCheck = true // 判断选中状态
      this.$refs.NodeTable.toggleRowSelection(row);
},

在删除按钮上绑定Alldelete这个方法,@click="Alldelete"

Alldelete() { // 多选删除
    if (this.ableCheck) {
    this.$confirm('确定删除?', '删除提示', {
          cancelButtonText: '取消',
          confirmButtonText: '确定',
          type: 'warning'
        }).then(() => { // 写一个循环逐条执行删除操作,这里的deleteNodeCode是调用的接口。
          for(let i = 0 ; i < this.multipleSelection.length; i++){
            console.log(this.multipleSelection[i].nodeCode)
            deleteNodeCode(this.multipleSelection[i].nodeCode)
          }
        }).then(() => {
              console.log(this.list)
              this.getList() //获取删除后的表格
              this.$message({
                type: 'success',
                message: '删除成功'
              })
          })
      } else {
        this.$confirm('请先选择表单', '删除提示', {
          confirmButtonText: '确定',
          type: 'warning'
        })
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、窗体 1、常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体。 ...
    Moment__格调阅读 10,055评论 0 11
  • 主要还是自己看的,所有内容来自官方文档。 介绍 Vue.js 是什么 Vue (读音 /vjuː/,类似于 vie...
    Leonzai阅读 8,673评论 0 25
  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 8,673评论 1 41
  • 以前不理解做自己是什么,这很难吗 我自己不就是我自己吗 坚持成为你自己为什么会成为别人一直在强调的重点。 现在有了...
    詹迅阅读 3,290评论 0 0
  • 01 与凤凰同飞,必是俊鸟;与虎狼同行,必是猛兽! 你能走多远,看你与谁同行...
    75b6555e24fa阅读 3,064评论 0 7