解决多选删除页面不同步问题

多选删除一般有两种情况:

1,删除接口支持传多个id,这是最理想的方法,建议大家积极与后端进行沟通解决。之后只需要判断接口回调刷新页面即可!

2,删除接口不支持传多个id,这就是接下来我们要处理的情况,利用promise.all来解决,亲测有效,接下来尽量用最通俗的语言和代码为大家解释!

复制代码
if (this.selectRows.length > 0) {        //以下为多选方法*******
          const ids = this.selectRows.map((item) => item.id);//取出所有需要删除的id*****
          this.$confirm("你确定要删除选中项吗", "提示", {
            confirmButtonText: "确定",
            cancelButtonText: "取消",
            type: "warning",
            center: true,
          })
            .then(() => {
              var promiseList = new Set();//生成一个唯一的集合******
              ids.forEach(async (item) => {//循环操作添加promise*****
                let promise = function () {
                  return new Promise(async (resolve) => {
                    let res = await crmCustomerDel(item);//crmCustomerDel为删除api ******
                    if (res.code == 200) {
                      resolve();
                    }
                  });
                };
                promiseList.add(promise());
              });
              Promise.all(promiseList)
                .then(async (result) => {
                  this.getInfo();//为页面初始化方法******
                  console.log(result);
                })
                .catch((error) => {
                  console.log(error);
                });
              this.$message({
                type: "success",
                message: "删除成功!",
              });
            })
            .catch(() => {
              this.$message({
                type: "error",
                message: "删除失败",
              });
            });

之后大家复制这段代码,更改为自己的删除api即可,最后希望帮到你,回来帮我点个赞!!!

相关推荐
hh随便起个名5 小时前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
我是小路路呀6 小时前
element级联选择器:已选中一个二级节点,随后又点击了一个一级节点(仅浏览,未确认选择),此时下拉框失去焦点并关闭
javascript·vue.js·elementui
程序员爱钓鱼6 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
PineappleCoder6 小时前
工程化必备!SVG 雪碧图的最佳实践:ID 引用 + 缓存友好,无需手动算坐标
前端·性能优化
JIngJaneIL7 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
敲敲了个代码7 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web
澄江静如练_7 小时前
列表渲染(v-for)
前端·javascript·vue.js
JustHappy8 小时前
「chrome extensions🛠️」我写了一个超级简单的浏览器插件Vue开发模板
前端·javascript·github
Loo国昌8 小时前
Vue 3 前端工程化:架构、核心原理与生产实践
前端·vue.js·架构