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)
  }
}

结果显示:

相关推荐
Dxy12393102165 小时前
MySQL索引完整教程:创建、查看、修改、删除与日常管理
前端·javascript·mysql
端庄的战斗机6 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
踩着两条虫8 小时前
可视化 vs 终端 vs 云端:VTJ.PRO、Claude Code、Codex 三强横评
前端·vue.js·人工智能·低代码·架构
前端毕业班9 小时前
uni-app 小程序支持 teleport 了
前端·javascript·vue.js
东风破_9 小时前
LLM 为什么记不住你?无状态、messages 和上下文管理
javascript·人工智能
Hilaku10 小时前
前端架构师的克制:什么时候该坚决对新技术说不?
前端·javascript·程序员
古夕10 小时前
多应用同域部署下 Favicon 异常问题排查与治理
前端·javascript
逗逗豆巴吧11 小时前
WPS 加载项中实现当前文档直接上传
前端·javascript·ecmascript 6
妙码生花11 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(二十一):网络请求封装优化
前端·javascript·vue.js
用户114818678948411 小时前
普通Fetch、Fetch流式、Axios、SSE:谁才是流式输出的正确操作?
前端·javascript