element-plus_message.js

message.js

import {
    ElMessageBox, ElNotification } from "element-plus";
import {
    VNode } from "vue";
import {
    AxiosResponse } from "axios";

let timeout;
export default (
  {
    title = "确认", message, okEms, errMes, okText, cancleText },
  success
) => {
   
  ElMessageBox({
   
    title: title,
    message: message,
    showCancelButton: true,
    closeOnClickModal: false,
    confirmButtonText: okText || "确定",
    cancelButtonText: cancleText || "取消",
    showClose: false,
    icon: "",
    buttonSize: "small",
    beforeClose: (action, instance, done) => {
   
      if (action === "confirm") {
   
        instance.confirmButtonLoading = true;
        instance.cancelButtonLoading = true;
        clearTimeout(timeout);
        timeout = setTimeout(() => {
   
          success()
            .then(() => {
   
              setTimeout(() => {
   
                instance.confirmButtonLoading = false;
                instance.cancelButtonLoading = false;
              }, 100);
            })
            .then(() => {
   
              if (okEms)
                ElNotification({
   
                  position: "bottom-right",
                  type: "success",
                  message: okEms,
                });
            })
            .catch(() => {
   
              if (errMes)
                ElNotification({
   
                  position: "bottom-right",
                  type: "error",
                  message: errMes,
                });
            })
            .finally(() => {
   
              done();
            });
        }, 300);
      } else {
   
        done();
      }
    },
  });
};
import messageVue from "@/component/message.js";
 messageVue(
    {
   
      message: "确定要**吗?",
      okEms: "**成功",
    },
    () => {
   
      loading = true;
      return $ajax
        .put(`/api/*******`)
        .then((res) => {
   
          load();
        })
        .catch(() => {
   
          loading = false;
        });
    }
  );

相关推荐

  1. <span style='color:red;'>Element</span>

    Element

    2024-02-20 21:42:03      14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-20 21:42:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-20 21:42:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-20 21:42:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-20 21:42:03       18 阅读

热门阅读

  1. docker安装milvus后,无法打开attu,日志报错

    2024-02-20 21:42:03       29 阅读
  2. 力扣题目-178. 分数排名

    2024-02-20 21:42:03       27 阅读
  3. 下一代Edge AI的应用初探

    2024-02-20 21:42:03       27 阅读
  4. scss配置主题

    2024-02-20 21:42:03       26 阅读