js删除el-table删除新增项,有的已经保存有的未经保存

有时候在弹窗中的弹窗要删除数据,有的是刚新增进来的,没有经过保存就没有id,有的已经保存过就有id
在这里插入图片描述
根据情况设定是否为编辑模式,如果为编辑模式就需要进行筛选删除及接口,如果不是编辑模式,只需要进行筛选删除

  this.editFlag = true; // 为编辑模式
   // 删除伤亡名单
    handelDel() {
      let that = this;
      if (!that.selectRow.length) {
        this.$message.error("请选择要删除的数据");
        return;
      }
      that
        .$confirm("是否确认删除?", "确认信息", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning",
        })
        .then(() => {
          if (this.editFlag) {
            this.tableDel();
          } else {
            const result = this.tableData.filter((itemA) => {
              return !this.selectRow.some((itemB) => itemA.id === itemB.id); // some 判断是否存在相同 projectName 的对象
            });
            this.tableData = result;
          }
        })
        .catch(() => {
          that.$message.info("已取消删除");
        });
    },
    tableDel() {
      let arr1 = this.selectRow.filter((val) => !val.accidentUserId);
      if (arr1.length > 0) {
        const result = this.tableData.filter((itemA) => {
          return !this.selectRow.some((itemB) => itemA.id === itemB.id); // some 判断是否存在相同 projectName 的对象
        });
        this.tableData = result;
      }
      let arr = this.selectRow.filter((val) => val.accidentUserId);

      if (arr.length > 0) {
        let accidentRecordIds = this.selectRow.map(
          (item) => item.accidentUserId
        );
        delUser(accidentRecordIds)
          .then((res) => {
            const { code, data, msg } = res.data;
            if (code == 0) {
              this.$message.success(msg || "删除成功");
              this.getTableData();
              this.innerDrawer = false;
            } else {
              this.$message.error(msg || "删除失败,请稍后重试");
            }
          })
          .catch((err) => {
            console.log(err);
          });
      }
    },

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/750014.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

酷睿Ultra 200V系CPU全阵容规格、跑分出炉:拉了坨大的

从最近几个月 12 代酷睿 CPU 大面积降价清库存,到 13、14 代高端 U 大范围翻车问题迟迟得不到解决。 这就很难不让人生出一种 Intel 似乎真无暇顾及老款 U,而是将有限精力通通放在了接下来酷睿 Ultra 处理器上的感觉。 当然,作为新工艺、新架…

【Java面试场景题】如何优化系统架构设计来缓解流量压力提升并发性能?

一、问题解析 我会以直播互动为例,带你看看读多写多的情况下如何应对流量压力。- 一般来说,这种服务多数属于实时互动服务,因为时效性要求很高,导致很多场景下,我们无法用读缓存的方式来降低核心数据的压力。所以&…

AR导航技术加持,图书馆阅读体验智慧升级

在信息爆炸的今天,图书馆作为知识的宝库,其藏书量和种类日益增多。然而,传统的图书馆导航方式已逐渐无法满足用户对快速、准确定位图书的需求。本文将探讨图书馆AR地图导航的实现原理、技术优势、功能特点以及市场前景,揭示为何AR…

【深度学习】Error: TensorBoard could not bind to port 6006 问题解决

问题描述 在启动TensorBoard时,遇到了端口冲突,如下图所示: 根据提示,出错原因是因为端口已经被占用了,因此我们要结束占用这个端口的进程。 我的系统是Windows系统,并不是Linux,网上大部分方…

vue 组件下 img 标签动态传入不展示

效果 解决办法&#xff1a; require() <titleComponent:title"业务工作概览":src"require(/assets/imgs/evaluation/overviewStatistics.png)"></titleComponent> 效果&#xff1a;

Nuxt3 的生命周期和钩子函数(三)

title: Nuxt3 的生命周期和钩子函数&#xff08;三&#xff09; date: 2024/6/27 updated: 2024/6/27 author: cmdragon excerpt: 摘要&#xff1a;概述了Nuxt3的关键生命周期钩子用途&#xff0c;如page:finish用于页面加载后处理&#xff0c;page:transition:finish处理过…

C++之STL(六七)

1、变动性算法 #include <vector> #include <iostream> #include <list> #include <algorithm>using namespace std;void print_element(int n) {cout << n << ; }void add_3(int& n) {n n 3; }int fun(int n) {return 2 * n; }boo…

【HarmonyOS】模拟器一直停留在开机页面,无法进入手机桌面

环境:window 10, 开发者工具:DevEco Studio NEXT Developer Beta1 Build #DS-233.14475.28.36.503402 Build Version: 5.0.3.402, built on June 16, 2024 Runtime version: 17.0.101-b1087.17 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 10.0 GC: G1 Y…

【Dison夏令营 Day 01】如何用Python写一个游戏“石头剪刀布”

欢迎你们踏入这个充满无限可能性的编程世界&#xff01;作为一名热爱Python的开发者&#xff0c;我深感编程的魅力&#xff0c;并希望与你们一同分享这份乐趣和激情。编程&#xff0c;不仅仅是一种技能&#xff0c;更是一种思维方式和解决问题的工具。在Python的世界里&#xf…

Linux内核中网络数据的流量控制(TC: Traffic control 和 QDISC)

(个人能力有限&#xff0c;本文如有错误之处&#xff0c;欢迎交流指正) 1 简介 在进行网络数据 接收 和 发送 过程中&#xff0c;网卡设备到L3(网络层) 中间会经历流量控制(Traffic control)。 《BPF之巅.洞悉Linux系统和应⽤性能》P413 qdisc这个可选层可以⽤来管理⽹络包的…

【博士每天一篇文献-综述】Biological underpinnings for lifelong learning machines

阅读时间&#xff1a;2023-12-17 1 介绍 年份&#xff1a;2015 作者&#xff1a;Dhireesha Kudithipudi&#xff0c;Mario Aguilar-Simon&#xff0c;其中通讯作者Josh Bongard教授也是另一篇论文的通讯作者《Neural modularity helps organisms evolve to learn new skills …

智慧校园-缴费管理系统总体概述

在构建现代化教育环境的过程中&#xff0c;智慧校园缴费管理系统脱颖而出&#xff0c;成为提升校园财务管理效率与服务质量的关键一环。缴费管理系统需要精心设计&#xff0c;通过科技力量&#xff0c;让原本繁琐的缴费流程变得简单快捷&#xff0c;同时增强家校之间的互动与信…

通过代理从ARDUINO IDE直接下载开发板包

使用免费代理 实现ARDUINO IDE2.3.2 下载ESP8266/ESP32包 免费代理 列表 测试代理是否可用的 网站 有时&#xff0c;代理是可用的&#xff0c;但依然有可能找不到开发板管理器的资料包。 可以多换几个代理试试。 代理的配置 文件 -> 首选项 -> 网络 进入后做如下配置…

linux 安装腾讯会议和解决ubuntu打开腾讯会议提示:不兼容 wayland 协议

一. 下载腾讯会议安装包 腾讯会议下载链接 二. 命令行安装 cd [安装包路径] sudo dpkg -i TencentMeeting_0300000000_3.19.1.400_x86_64_default.publish.deb 三. 打开腾讯会议提示无法支持wayland 协议 解决方法: 打开终端 sudo vi /etc/gdm3/custom.conf打开 #Wayland…

Zabbix 监控系统部署

Zabbix 监控系统部署 Zabbix是一个企业级开源分布式监控解决方案&#xff0c;可监控网络的众多参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的运行状况和完整性。 Zabbix 使用灵活的通知机制&#xff0c;允许用户为几乎任何事件配置基于电子邮件的警报。这允许…

Linux-笔记 嵌入式gdb远程调试

目录 前言 实现 1、内核配置 2、GDB移植 3、准备调试程序 4、开始调试 前言 gdb调试器是基于命令行的GNU项目调试器&#xff0c;通过gdb工具我们可以实现许多调试手段&#xff0c;同时gdb支持多种语言&#xff0c;兼容性很强。 在桌面 Linux 系统&#xff08;如 Ubuntu、Cent…

从新手到高手:彻底掌握MySQL表死锁

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 从新手到高手&#xff1a;彻底掌握MySQL表死锁 前言什么是死锁mysql死锁的原因1. 互斥资源的竞争…

加速鸿蒙生态共建,蚂蚁mPaaS助力鸿蒙原生应用开发创新

6月21日-23日&#xff0c;2024华为开发者大会&#xff08;HDC 2024&#xff09;如期举行。在22日的【鸿蒙生态伙伴SDK】分论坛中&#xff0c;正式发布了【鸿蒙生态伙伴SDK市场】&#xff0c;其中蚂蚁数科旗下移动开发平台mPaaS&#xff08;以下简称&#xff1a;蚂蚁mPaaS&#…

科林Linux7_网络爬虫

一、爬虫 网络资源的下载工具&#xff0c;工作与万维网环境&#xff0c;持续获取网页网站中的网络信息。可持续的数据采集机器人 1、搜索引擎技术使用爬虫 2、数据分析、数据挖掘领域&#xff0c;需要爬虫进行数据准备 3、数据批处理、采集&#xff0c;大量获取某些网站中的…

学习笔记(linux高级编程)7

2._exit 系统调用 void _exit(int status); 功能: 让进程退出,不刷新缓存区 参数: status:进程退出状态 返回值: 缺省 回调函数 3.atexit int atexit(void (*function)(void)); 功能: 注册进程退出前执行的函数 参数: function:函数指针 指向void返回值void参数的函数指针 返…