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()

})

相关推荐
不爱编程的小陈1 天前
C/C++每日面试题
面试·职场和发展·1024程序员节
开开心心就好1 天前
右键菜单管理工具,添加程序自定义名称位置
linux·运维·服务器·ci/cd·docker·pdf·1024程序员节
码农三叔2 天前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk
西幻凌云6 天前
初始——正则表达式
c++·正则表达式·1024程序员节
启芯硬件7 天前
电源XL6009E1的dieshot细节分析-芯片设计干货
大数据·经验分享·硬件工程·1024程序员节
一颗青果8 天前
单例模式 | 死锁
linux·服务器·单例模式·1024程序员节
yBmZlQzJ11 天前
财运到内网穿透域名解析技术机制与中立评估
运维·经验分享·docker·容器·1024程序员节
yBmZlQzJ11 天前
内网穿透工具通过端口转发实现内外网通信
运维·经验分享·docker·容器·1024程序员节
数据皮皮侠AI11 天前
数字经济政策工具变量数据(2008-2023)
大数据·数据库·人工智能·笔记·1024程序员节