vue页面加载时的进度条功能(实例代码)


Posted in Javascript onJanuary 13, 2020

先看一张图

vue页面加载时的进度条功能(实例代码)

如果我们的程序每次页面切换时,顶部也有一个进度条,那会让用户体验提升很大的。

npropgress插件

github地址

简单用法 - Vue 项目为例(详细配置,点击上面的github地址查看文档)

最简单的使用方式:vue项目的每次路由切换时,都加载进度条

安装

npm install --save nprogress

引入

在路由配置文件中引入,写到路由加载前和加载后的两个钩子函数中

// 引入
import NProgress from 'nprogress';
import 'nprogress/nprogress.css';
// 进度条配置项这样写
NProgress.configure({
 showSpinner: false
});
// 路由跳转前钩子函数中 - 执行进度条开始加载
router.beforeEach((to, from, next) => {
 NProgress.start();
});
// 路由跳转后钩子函数中 - 执行进度条加载结束
router.afterEach(() => {
 NProgress.done();
});

如果是 cdn 引入的话,如下

<script src='nprogress.js'></script>
<link rel='stylesheet' href='nprogress.css'/>

设置进度条颜色

如果是一般的 vue 项目,把样式放到一个css文件中,在项目主文件main.js中引入,下面是 css 样式

#nprogress .bar {
 background: #00CC00 !important; //自定义颜色
}

配置项

手动控制进度条递增,参数范围是0 - 1,不传参数的话,每次调用都会随机递增,但永远不会到达 100% ,除非调用NProgress.done();

// 调用之前如果进度条的状态 50%
NProgress.inc(0.2);
// 调用之后 70%

进度条加载完成

带参数true:即使没有调用NProgress.start(),也会显示并执行进度条从 0% - 100% 的状态,然后消失。
不带参数:如果没有调用NProgress.start(),那么此命令不会执行任何操作。

NProgress.done(true);

启动进度条时的最小百分比(默认为 0.08)

NProgress.configure({
 minimum: 0.3
});

可以使用模板更改标记。要保持进度条正常工作,要在其中保留一个role='bar'元素,参考默认模板。

// 默认模板
NProgress.configure({
 template: "<div class='....'>...</div>"
});

// 举例
NProgress.configure({
 template: "<div class='other-instance'><div role='bar'>更改标记</div></div>"
})

使用 easing 和 speed 调整动画设置,ease可传递CSS3缓冲动画字符串(如ease、linear、ease-in、ease-out、ease-in-out、cubic-bezier),speed为动画速度(单位ms)。默认分别为 ease 200

NProgress.configure({
 easing: 'ease',
 speed: 200
});

关闭自动递增行为

NProgress.configure({
 trickle: false
});

调整递增的频率,单位为毫秒

NProgress.configure({
 trickleSpeed: 200
});

关闭微调器,默认为开启状态(上图中右上角的那个圆圈加载图标)

NProgress.configure({
 showSpinner: false,
});

更改父容器

NProgress.configure({
 parent:'#container'
});

总结

以上所述是小编给大家介绍的vue页面加载时的进度条功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
基于jquery循环map功能的代码
Feb 26 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
Jun 20 Javascript
js获取url中的参数且参数为中文时通过js解码
Mar 19 Javascript
JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
Jul 01 Javascript
Javascript 调用 ActionScript 的简单方法
Sep 22 Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 Javascript
JavaScript获取tr td 的三种方式全面总结(推荐)
Aug 15 Javascript
Node.js如何对SQLite的async/await封装详解
Feb 14 Javascript
vue-router二级导航切换路由及高亮显示的实现方法
Jul 10 Javascript
Vuex 模块化使用详解
Jul 31 Javascript
Layui选项卡制作历史浏览记录的方法
Sep 28 Javascript
从零使用TypeScript开发项目打包发布到npm
Feb 14 Javascript
微信小程序canvas截取任意形状的实现代码
Jan 13 #Javascript
js实现列表向上无限滚动
Jan 13 #Javascript
vue 组件销毁并重置的实现
Jan 13 #Javascript
VUE实现自身整体组件销毁的示例代码
Jan 13 #Javascript
微信小程序聊天功能的示例代码
Jan 13 #Javascript
js实现适配移动端的拖动效果
Jan 13 #Javascript
Vue 嵌套路由使用总结(推荐)
Jan 13 #Javascript
You might like
php生成文件
2007/01/15 PHP
php下实现伪 url 的超简单方法[转]
2007/09/24 PHP
php表单敏感字符过滤类
2014/12/08 PHP
php批量添加数据与批量更新数据的实现方法
2014/12/16 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
2017/01/20 PHP
PHP实现的redis主从数据库状态检测功能示例
2017/07/20 PHP
jquery tools系列 expose 学习
2009/09/06 Javascript
jquery属性过滤选择器使用示例
2013/06/18 Javascript
JavaScript字符串对象substring方法入门实例(用于截取字符串)
2014/10/17 Javascript
JavaScript实现的一个日期格式化函数分享
2014/12/06 Javascript
node.js中的buffer.Buffer.byteLength方法使用说明
2014/12/10 Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
2015/08/03 Javascript
使用jQuery或者原生js实现鼠标滚动加载页面新数据
2016/03/06 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
2016/12/20 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
vue.js2.0点击获取自己的属性和jquery方法
2018/02/23 jQuery
解决修复npm安装全局模块权限的问题
2018/05/17 Javascript
vue-cli3+typescript新建一个项目的思路分析
2019/08/06 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
vue-quill-editor 自定义工具栏和自定义图片上传路径操作
2020/08/03 Javascript
linux系统使用python获取内存使用信息脚本分享
2014/01/15 Python
在Python的Flask框架中使用日期和时间的教程
2015/04/21 Python
利用aardio给python编写图形界面
2017/08/21 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
Python Threading 线程/互斥锁/死锁/GIL锁
2019/07/21 Python
python单例设计模式实现解析
2020/01/07 Python
TFRecord格式存储数据与队列读取实例
2020/01/21 Python
Python 没有main函数的原因
2020/07/10 Python
cosme官方海外旗舰店:日本最大化妆品和美容产品的综合口碑网站
2017/01/18 全球购物
土木工程应届生自荐信
2013/09/24 职场文书
求职信模板怎么做
2014/01/26 职场文书
《周恩来的四个昼夜》观后思想汇报范文两篇
2014/09/10 职场文书
工会文体活动总结
2015/05/07 职场文书
小鞋子观后感
2015/06/05 职场文书
pyqt5打包成exe可执行文件的方法
2021/05/14 Python
table设置超出部分隐藏,鼠标移上去显示全部内容的方法
2022/12/24 HTML / CSS