Nprogress实现路由加载进度[React+Vue]

本文介绍了如何在React和Vue项目中利用Nprogress插件创建路由加载进度条。在React中,通过结合使用React Router和Nprogress,可以实现在切换页面时显示进度条;而在Vue中,利用导航守卫轻松实现路由切换时的加载效果。


1. Nporgress

在很多网页的加载过程中,顶部都会展示一个进度条来显示加载进度。Nprogress 就是一款非常方便的进度条插件,其主要用法为:

NProgress.start() — 开始

NProgress.set(0.4) — 设置百分比

NProgress.inc() — 随机增长进度条(不会到达100%)

NProgress.done() — 完成

2. React中的使用

在切换页面时出现进度条,本质就是将其与路由结合使用。首先的想法是将 react-router-dom 中的 Router 组件进行封装,在 useEffect 中控制 Nprogress 的进度。

React中的 Suspenselazy 可以实现基于路由的代码拆分,其中 Suspense 组件用于指定在加载得到路由打包文件前显示一个自定义loading界面,此时需要显示的即为 Nprogress 的加载效果。

import React, {
   
    Suspense } from 'react';
import {
   
    Routes, Route } from 'react-router-dom';

import NProgress from './components/NProgress';

const Home = React.lazy(() => import('./pages/Home'));

const App: React.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值