React项目使用NProgress作为加载进度条

React项目使用NProgress作为加载进度条

文档参考:https://zhuanlan.zhihu.com/p/616245086?utm_id=0

0、效果

如下,可全局在页面顶部有一条进度条
在这里插入图片描述

1、react安装依赖

yarn add nprogress

通过以上安装后将在react项目的package.json中增加对应的依赖,比如我的项目中,安装后多了如下依赖:

"nprogress": "^0.2.0",

2、使用

import NProgress from 'nprogress' // 引入nprogress插件
import 'nprogress/nprogress.css'  // 这个nprogress样式必须引入

NProgress.start();
NProgress.done();

以上用法可以在项目中的各个组件中使用,但最好是有个地方全局引入,比如我的项目中在全局的接口请求文件axios.js中使用。axios.js中有全局拦截请求前和请求后的代码,那这里引入最合适了。

axios.js部分内容:

// NProgress 进度条和样式
import NProgress from 'nprogress';
import 'nprogress/nprogress.css';

// request interceptor
axios.interceptors.request.use(
    config => {
        // 请求时开启进度条
        NProgress.start();
        //...其他代码
    },
    error => {
        // 异常时也关闭进度条
        NProgress.done();
        //...其他代码
    }
);

// response interceptor
axios.interceptors.response.use(
    response => {
		// 响应成功关闭进度条
        NProgress.done();
        //...其他代码
    },
    error => {        
        // 异常时也关闭进度条
        NProgress.done();
        // 其他代码...
    }
);

3.进度条颜色设置

写全局样式即可,比台在全局样式文件index.less中加入以下样式修改进度条颜色

// 全局顶部进度条颜色
#nprogress .bar {
    background: #4096ff !important; //自定义颜色
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值