效果如图:根据官网多选表格所给的@selection-change="handleSelectionChange",此方法可以获取包含当前选中所有数据的数组,但是并没有下标index.第一种方法:通过两数组中对象的属性值是否相同进行删除,但是存在多个相同对象的数据时,会一起删除,不采用。第二种方法:直接通过数组中的数据对象,==号比较,这里注意了"虽然多个对象相同,但并不是同一个引用,可以实现一一对应删除".见代码:

// 未发货表格,批量删除
    weifahuo_piliang_delete() {
      for (let i = this.weifahuo.weifahuo_selectOK.length; i > 0; i--) {
        for (let j = 0; j < this.weifahuo.data_weifahuo_piliang.length; j++) {
          if (
            this.weifahuo.weifahuo_selectOK[i - 1] ==
            this.weifahuo.data_weifahuo_piliang[j]
          ) {
            this.weifahuo.weifahuo_selectOK.splice(i - 1, 1)
          }
        }
      }
    }

外层循环原数组,内层批量选中的数组,注意一点删除的时候,i倒过来循环,不然会引起index下角标因删除前一条而变化的问题。第一次写博客,小白入坑,请多指教!!

Logo

前往低代码交流专区

更多推荐