vue3根据数据取消el-table选中状态获取到最新数据

原始数据:

javascript 复制代码
//el-table点击复选框事件
function getSelected(selection, row){
  //判断是否是已选过数据 ==0为没有选,>0有选过
  if(initial.value>0 ){
    let isCheck = false //是否取消 true=取消 false=不取消
    //循环判断已选的数据是否包含当前点击获取到的数据
    feeCodeData.value.forEach(imgItem => {
      //包含当前数据,表示取消选中的操作,需要从已选数据中删除
      if (imgItem.id === row.id) {
        // 先findIndex拿到index,否则直接否则直接splice(imgItem,1)是会删除失败的!
        feeCodeData.value.splice(feeCodeData.value.findIndex((item) => item.id === row.id), 1)
        isCheck = true
      }
    })
    //已选数据中不包含当前数据,表示选中的操作,需要添加到已选的数据中
    if(!isCheck){
      feeCodeData.value.push(row)
    }
  }
  //没有已选数据,直接将选中的数据添加到数组中
  else{
    feeCodeData.value.push(row)
  }
}

结果显示:

相关推荐
2501_946224311 分钟前
旅行记录应用关于应用 - Cordova & OpenHarmony 混合开发实战
javascript·harmonyos·harvester
Shi_haoliu5 分钟前
inno setup6.6.1实例,制作安装包,创建共享文件夹,写入注册表(提供给excel加载项,此文章解释iss文件)
前端·vue.js·windows·excel
Data_agent24 分钟前
CNFANS模式淘宝1688代购系统搭建指南
大数据·开发语言·前端·javascript
美酒没故事°30 分钟前
vue3+element 滚动触底加载选择器
javascript·vue.js·ecmascript
澄江静如练_39 分钟前
表单输入绑定
服务器·前端·javascript
猩球中的木子41 分钟前
vue-plugin-hiprint打印高度不够,提示:没有足够空间,显示下方内容,问题处理方案及实操
前端·vue.js
狗头大军之江苏分军1 小时前
Node.js 原生功能越来越强,我们是不是被 npm 玩坏了?
前端·javascript·架构
独自破碎E1 小时前
TS7016: Could not find a declaration file for module ‘vue-router‘.解决办法
前端·javascript·vue.js
RustFS1 小时前
RustFS 如何实现对象存储的前端直传?
vue.js·docker·rust
用户4672695597611 小时前
vue 表格 vxe-table 树结构实现单元格复制粘贴功能,实现树层级节点复制功能
vue.js