当前位置: 首页 > article >正文

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

        })


http://www.kler.cn/news/366590.html

相关文章:

  • Java--反射机制
  • mysql的卸载与安装
  • YOLOv8_ ByteTrack目标跟踪、模型部署
  • PostgreSQL用load语句加载插件
  • 基于.NET 8.0,C#中Microsoft.Office.Interop.Excel来操作office365的excel
  • Pytorch常用函数汇总【持续更新】
  • HttpRequest模块 --- 存储http请求要素
  • leetCode算法题爬楼梯递归写法
  • MySQL-事务隔离级别
  • 不用一行代码,手把手叫你创作一款旅游类智能体!
  • CANFD SSP第二采样点引发的“风波”分析
  • 完美解决phpstudy安装后mysql无法启动
  • React六官方文档总结三脱围机制
  • 关闭容器 禁用docker自启动 卸载docker
  • go 使用fyne实现桌面程序的计算器例子
  • 2024年土建施工员考试题库及答案
  • Android常用C++特性之std::piecewise_construct
  • Java基础(7)图书管理系统
  • 网站渗透常识
  • Modern CMake 简明教程(8)- 集成Qt
  • lua while循环
  • Linux -- 共享内存(2)
  • 机器学习4
  • ESC服务器被暴力破解如何解决
  • Redis 主从同步 总结
  • 【大数据技术基础 | 实验五】ZooKeeper实验:部署ZooKeeper