当前位置: 首页 > article >正文

vue3 + ts + pnpm:nprogress / 页面顶部进度条

一、简介

nprogress 是一个轻量级的进度条库,它适用于在网页上添加顶部进度条,用于指示页面加载进度或任何长时间的运行过程。这个库非常流行,因为它易于使用且视觉效果很好。

二、安装

pnpm add nprogress

三、在使用的页面引入 / src/views/nprogress/index.vue

import NProgress from 'nprogress';
import 'nprogress/nprogress.css';

四、页面使用

4.1、配置 nprogress(可选)

NProgress.configure({ showSpinner: false }); // 关闭加载指示器

4.2、代码

<template>
  <div class="container">
    <button @click="fetchData">获取数据</button> 
  </div>
</template>

<script setup lang="ts">
import NProgress from 'nprogress'
import 'nprogress/nprogress.css';

NProgress.configure({ showSpinner: false }); // 关闭加载指示器  

const fetchData = () => {
  NProgress.start(); // 开始进度条
  setTimeout(() => {
    NProgress.done(); // 完成进度条 
    console.log('success')
  }, 3000);
}
</script>

<style scoped lang="less">

</style>

4.3、效果

五、Vue Router 中使用

如果你在使用 Vue Router,并且想要在每个路由跳转时显示和隐藏进度条,你可以使用 Vue Router 的导航守卫。

import { createRouter, createWebHistory } from 'vue-router';  
import NProgress from 'nprogress';  
import 'nprogress/nprogress.css';  
  
const routes = [  
  // 你的路由定义  
];  
  
const router = createRouter({  
  history: createWebHistory(),  
  routes,  
});  
  
router.beforeEach((to, from, next) => {  
  NProgress.start();  
  next();  
});  
  
router.afterEach(() => {  
  NProgress.done();  
});  
  
export default router;

六、欢迎交流指正

参考链接

https://www.npmjs.com/package/nprogress

简单又快捷的进度条—NProgress库了解一下-腾讯云开发者社区-腾讯云


http://www.kler.cn/a/321810.html

相关文章:

  • 博物馆实景复刻:开启沉浸式文化体验的新篇章
  • Java JDBC教程
  • Mybatis配置文件的增删改查功能
  • catchadmin-webman 宝塔 部署
  • Ceph 中PG与PGP的概述
  • SpringBoot(十八)SpringBoot集成Minio
  • [数据库] Redis学习笔记(二):Redis Java客户端(Jedis/SpringDataRedis)
  • Uniapp 微信小程序 最新 获取用户头像 和 昵称 方法 有效可用
  • Git 常用操作命令说明
  • 基于python深度学习遥感影像地物分类与目标识别、分割实践技术
  • 343.整数拆分
  • 如何用ChatGPT制作一款手机游戏应用
  • 【前端】ES9:异步遍历器
  • 【C/C++】initializer_list
  • Ansible 剧本的执行
  • 【数据结构】什么是二叉搜索(排序)树?
  • 基于SSM+小程序的自习室选座与门禁管理系统(自习室1)(源码+sql脚本+视频导入教程+文档)
  • Docker 付费订阅价格大幅上调,免费订阅功能受限,云计算和安全产品有调整
  • python爬虫初体验(四)—— 百度文库PPT的爬取
  • cpu路、核、线程、主频、缓存
  • 解决macOS MySQL安装后不能远程访问的问题
  • Vue3.3新特性defineModel
  • 2023_Spark_实验十一:RDD基础算子操作
  • 从零开始使用树莓派debian系统使用opencv4.10.0进行人脸识别(保姆级教程)
  • Linux(Ubuntu)源码安装postgresql16.3
  • mysql数据库的基本管理