先安装引入

import ElementUI from 'element-ui'
import { Loading } from 'element-ui'

在vue的原型链上定义一个打开loading的方法

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

在开始请求接口是调用改方法,因为我们是直接定义在VUE原型链上的方法,所以我们可以直接this调用

const rLoading = this.openLoading();

请求成功后执行关闭操作:

rLoading.close();

最新文章

  1. Random
  2. FLAG_ACTIVITY_CLEAR_TOP
  3. HDU-1002(简单大数加法)
  4. java mysql模板
  5. string之substring的用法
  6. windows安装composer方法和使用方法
  7. JVM 指令集合
  8. ExtJS配置与入门项目创建
  9. JAVA基础知识总结:九
  10. 【洛谷T7153】(考试) 中位数
  11. Python内置模块之random
  12. error connecting: Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置
  13. Zookeeper Client基础操作和Java调用
  14. P2221 [HAOI2012]高速公路
  15. 15 Top Paying IT Certifications In 2016: AWS Certified Solutions Architect Leads At $125K
  16. spring boot 启动方式
  17. LeetCode题解之Peak Index in a MountainArray
  18. datetime 模块
  19. js-小数计算问题
  20. Python学习---基于JQuery的Ajax实现[快捷+底层$.ajax]

热门文章

  1. leetcode 79. Word Search 、212. Word Search II
  2. mysql连接工具记录
  3. linux 清除/var/spool/mail/root日志存储
  4. Python学习笔记——GUI
  5. edusoho twig 引入文件功能
  6. 使用请求包装器RequestWrapper 对博客内容进行编码
  7. css常见双栏和三栏布局
  8. 澎湃新闻速览版UWP 隐私策略
  9. SQL 十位随机数(大小写字母+数据)
  10. ThreadLocal,Lock的事儿