手摸手带你用实现vue全屏loading插件

本文将手把手教你如何在Vue项目中创建全屏加载(loading)插件,解决网页加载期间用户界面空白的问题。通过axios的请求和响应拦截器,实现显示和隐藏loading的功能。文章详细介绍了定义全局方法、创建Vue插件、使用单文件组件定义loading结构以及在axios拦截器中应用的过程。
摘要由CSDN通过智能技术生成

手摸手带你用实现vue全屏loading插件

img

前言:

由于我们打开网页时,浏览器与服务器交互需要时间,受限于宽带以及服务器性能,导致用户在访问一个网页时,往往需要一个等待期,才能在浏览器中真正完全展示出网页内容。在网页加载过程中网页就是一片空白,对于我们用户而言,我们看到一片空白,还以为网站 “挂掉了”,就很忧伤!!

img

当然了,我们针对这个问题,各大网站都有自己的解决方案。

有的网站会用骨架屏。

比如掘金:利用骨架屏,给用户提醒,网站内容马上呈现给您,不要着急!

img

有的网站会选择在数据出来之前 定义一个全屏的loading,提供用于网站正在加载

比如:网站在加载时以及网站刷新时,会弹出全屏loading。

img

文章目的:

今天我们就要带大家实现,在vue开发的前后端分离应用中,实现在网页加载以及刷新时,实现如上图全屏loading的效果!

功能分析

vue项目中所有的请求一般都是通过axios,所以我们需要给axios新增请求和响应拦截,在请求拦截中显示loading,和响应拦截中关闭loading。

所以我们需要定义两个全局方法,一个是显示loading,叫 s h o w L o a d i n g ( ) , 另 一 个 叫 showLoading(),另一个叫 showLoading(),hideLoading()关闭全屏loading。

代码实现

上面的梳理,我们明确了,需要定义两个全局方法,一个显示loading一个关闭loading,这里我们定义一个Vue的插件通过插件动态给实例安装 显示和关闭Loading方法。

  • 定义$loading插件,在Vue构造函数原型上添加两个方法

以下loading.js代码

const $loading = {
    install: (Vue) 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值