vue中页面加载进度条效果的实现(NProgress),NProgress.start()开启进度条,NProgress.done()完成进度条

vue中页面加载进度条效果的实现(NProgress)

1.安装插件

npm install --save nprogress

2.在main.js中引入

import NProgress from "nprogress"; // 导入 nprogress模块
import "nprogress/nprogress.css"; // 导入样式,否则看不到效果

NProgress.configure({
    
     showSpinner: false }); // 显示右上角螺旋加载提示

3.在main.js中进行配置

 NProgress.configure({
    
         
     easing: 'ease',  // 动画的缓动函数(easing function)。这里设为 ease,表默认的缓动函数。   
     speed: 500,  // 递增进度条的速度;单位是毫秒    
     showSpinner: false, // 是否显示加载ico;是否在显示加载图标   
     trickleSpeed: 200, // 自动递增间隔;这里表示每间隔 200 毫秒自动递增一次进度   
     minimum: 0.3 // 初始化时的最小百分比
 })

4.在main.js中对路由钩子进行设置

声明完router(即:const router = new VueRouter({…}))后面写上路由钩子函数

//当路由进入前
 router.beforeEach((to, from , next) => {
    
    
     // 每次切换页面时,调用进度条
    NProgress.start();//开启进度条
    // 这个一定要加,没有next()页面不会跳转的
     next();
 });
//当路由进入后:关闭进度条
router.afterEach(() => {
    
      
    // 在即将进入新的页面组件前,关闭掉进度条
    NProgress.done()//完成进度条
})

5.改变进度条的颜色(可选)

App.vue里,在style中加上下面这样几行代码即可

#nprogress .bar {
    
    
  background: blue !important;    //这里可以随便写颜色
}

重点 : NProgress.start()开启进度条,NProgress.done()完成进度条

猜你喜欢

转载自blog.csdn.net/2301_76866366/article/details/131732035