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;
        });
    }
  );
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值