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

结果显示:

相关推荐
嘉琪00110 小时前
Day8 完整学习包(Vue 基础 & 响应式)——2026 0320
前端·vue.js·学习
FlyWIHTSKY10 小时前
Vue3 单文件中不同的组件
前端·javascript·vue.js
FlyWIHTSKY11 小时前
Vue 3 onMounted 中控制同步与异步执行策略
前端·javascript·vue.js
PascalMing11 小时前
告别 Nginx!ASP.NET Core 实现多域名 Vue 静态服务与代理转发
vue.js·nginx·asp.net
蜗牛攻城狮11 小时前
【Vue3实战】El-Table实现“超过3行省略,悬停显示全文”的完美方案(附性能优化)
前端·vue.js·性能优化·element-plus
隔壁小邓11 小时前
vue的组件化的理解之单独拆分的组件&组件的封装
前端·javascript·vue.js
Ivanqhz11 小时前
图着色寄存器分配算法(Graph Coloring)
开发语言·javascript·python·算法·蓝桥杯·rust
我命由我1234511 小时前
Element Plus 问题:选择框表单校验没有触发
开发语言·前端·javascript·html·ecmascript·html5·js
optimistic_chen11 小时前
【Vue3入门】vue-router 路由管理
前端·javascript·vue.js·路由·router
捕捉一只前端小白11 小时前
cpolar内网穿透以及微信小程序域名设置
前端·vue.js·微信小程序·小程序