VUE前端按钮添加遮罩层

需求

当前需求是由于部分按钮操作的执行时间过长,因此添加遮罩层,防止用户误操作。

实现方式

在请求接口时创建遮罩层,并将遮罩层保存为全局唯一,请求成功或失败时,关闭遮罩层即可,切记,请求失败时一定要记得关闭。

公共方法

遮罩层的样式可自定义修改

// loading.js

import { Loading } from 'element-ui';

import store from '@/store/index.js';

/**

* 展示遮罩层

* @param {*} text 遮罩层显示的文本信息

*/

export const showLoading = (text) => {

// 先进行关闭

hideLoading()

// 创建遮罩层

let loadingInstance = Loading.service(

{

text : text,

lock: true,

spinner: 'el-icon-loading',

background: 'rgba(0, 0, 0, 0.7)'

}

);

// 定义全局

store.commit("SET_LOADING_INSTANCE", loadingInstance);

}

/**

* 隐藏遮罩层

*/

export const hideLoading = () => {

// 隐藏 loading 的逻辑

let loadingInstance = store.getters.loadingInstance

if (loadingInstance && loadingInstance != null) {

loadingInstance.close();

store.commit("SET_LOADING_INSTANCE", null);

}

}

调用方式

import {showLoading, hideLoading} from "@/util/loading";

// 在需要的地方去调用

// 弹出遮罩层

showLoading("loading")

发送请求.then(res =>{

this.$message({

type: "success",

message: res.data.msg

});

hideLoading()

// 刷新界面

this.handleRefresh()

})

相关推荐
jamison_118 天前
文心一言与 DeepSeek 的竞争分析:技术先发优势为何未能转化为市场主导地位?
人工智能·ai·chatgpt·gpt-3·1024程序员节
NaZiMeKiY19 天前
HTML5前端第六章节
前端·html·html5·1024程序员节
jamison_123 天前
颠覆未来:解锁ChatGPT衍生应用的无限可能(具体应用、功能、付费模式与使用情况)
ai·chatgpt·1024程序员节
NaZiMeKiY1 个月前
HTML5前端第七章节
1024程序员节
earthzhang20211 个月前
《Python深度学习》第四讲:计算机视觉中的深度学习
人工智能·python·深度学习·算法·计算机视觉·numpy·1024程序员节
明明真系叻1 个月前
2025.3.2机器学习笔记:PINN文献阅读
人工智能·笔记·深度学习·机器学习·1024程序员节·pinn
bitenum2 个月前
【C++/数据结构】队列
c语言·开发语言·数据结构·c++·青少年编程·visualstudio·1024程序员节
IT学长编程2 个月前
计算机毕业设计 基于SpringBoot的智慧社区管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
java·spring boot·后端·毕业设计·课程设计·论文笔记·1024程序员节
qq_382391332 个月前
WPF框架学习
学习·wpf·1024程序员节
✿ ༺ ོIT技术༻2 个月前
Linux:TCP和守护进程
linux·运维·服务器·网络·tcp/ip·1024程序员节