先引入element.js
一、在main.js 界面添加方法

Vue.prototype.openLoading = function () {
  const loading = this.$loading({           // 声明一个loading对象
    lock: true,                             // 是否锁屏
    text: '加载中...',                     // 加载动画的文字
    spinner: 'el-icon-loading',             // 引入的loading图标
    background: 'rgba(0, 0, 0, 0.5)',       // 背景颜色
    target: '.sub-main',                    // 需要遮罩的区域
    body: true,
    customClass: 'mask'                     // 遮罩层新增类名
  })
  setTimeout(function () {                  // 设定定时器,超时5S后自动关闭遮罩层,避免请求失败时,遮罩层一直存在的问题
    loading.close();                        // 关闭遮罩层
  }, 5000)
  return loading;
}

二、调用,需要在哪个组件使用,就在那个组件加

const rLoading = this.openLoading();     //打开loading界面
rLoading.close();  关闭loading界面
Logo

前往低代码交流专区

更多推荐