首页 > 其他分享 >react 进度条

react 进度条

时间:2023-06-19 10:25:32浏览次数:28  
标签:const 进度条 setPublishPercent 100% height react background

最终结果图

还是直接上代码哈,我这里直接用的react的hook写的,最近这一年没怎么有时间更新博客,这两年我换技术栈了,换成react了,中间写了很多组件,后面我有空了全部都更新出来吧,不过都是react的哦,当然有时候vue也在使用哈,一般我都是直接上代码,不存在过多的讲解,因为不是特别难的代码,一看就明白。

js

     const [publish, setPublish] = useState(false);
    const [publishPercent, setPublishPercent] = useState(0);
   const handleAppStart = async () => {
        setPublish(true);
        setPublishPercent((value) => {
          return 10;
        });
        const ani = setInterval(() => {
            const loadingWidth = publishPercent;
            const bodyWidth = 100;
            if (loadingWidth < bodyWidth) {
                setPublishPercent((value) => {
                  return value + (bodyWidth - value) * 0.005;
                });
            }
        }, 100);
        const clearAni = () => {
            clearInterval(ani);
            setTimeout(() => {
                setPublish(false);
            }, 500);
        };
        //这里是借口拉,成功的话就会变成100%拉,
        // axios.post(`URL`).then(res => {
        
        //                         setPublishPercent(100);
        //                         clearAni();
        //     } else {
        //         Message.error('发布失败!');
        //         clearAni();
        //     }
        // }).catch(err => {
        //     console.log(err);
        //     Message.error('发布失败!');
        //     clearAni();
        // });
    
      };

html

 <div className="text">
                   发布中-进度
      <span className="percent">{Math.floor(publishPercent)}%</span>
  </div>

css

.box{
    width: 500px;
    height: 200px;
    background: burlywood;
    position: relative;
    .publish-loading {
        position: absolute;
        bottom: 0px;
        width: 100%;
        height: 24px;
        background: rgba(232, 243, 255, 0.8);
        z-index: 100;
        .line {
            width: 100%;
            height: 2px;
            background: #f2f3f5;
            position: absolute;
            bottom: 0px;
            z-index: 8;
            border-radius: 4px;
        }
        .active-line {
            height: 2px;
            background: #165dff;
            position: absolute;
            bottom: 0px;
            z-index: 8;
            border-radius: 4px;
            transition: all .2s ease;
        }
        .text {
            width: 100%;
            text-align: center;
            padding: 0px 10px;
            color: #165DFF;
            line-height: 22px;
            .percent {
                color: #2d84fb;
                font-weight: 400;
            }
        }
    }
}

标签:const,进度条,setPublishPercent,100%,height,react,background
From: https://www.cnblogs.com/wangliko/p/17490448.html

相关文章

  • React SSR - 写个 Demo 一学就会
    ReactSSR-写个Demo一学就会今天写个小Demo来从头实现一下react的SSR,帮助理解SSR是如何实现的,有什么细节。什么是SSRSSR即ServerSideRendering服务端渲染,是指将网页内容在服务器端中生成并发送到浏览器的技术。相比于客户端渲染(CSR),SSR一般用于以下场景:SEO......
  • React - 07 类组件的渲染逻辑
    1.ES6类的知识ES6类的继承2.创建类组件创建类组件创建一个构造函数(类)+要求必须继承React.Component/PureComponent这个类+我们习惯于使用ES6中的class创建类「因为方便」+必须给当前类设置一个render的方法「放在其原型上」:在render方法中,返回需要渲染的......
  • [MAUI]弧形进度条与弧形滑块的交互实现
    @目录弧形基类定义绘制弧弧形进度条(ProgressBar)添加动画宽度补偿文本弧形滑块(Slider)创建控制柄拖动事件处理项目地址进度条(ProgressBar)用于展示任务的进度,告知用户当前状态和预期;滑块(Slider)通过拖动滑块在一个固定区间内进行选择数值范围。进度条和滑块都是进度值在UI界面......
  • 【React工作记录一百一十二】React(Hook)+TS+axios+ant design+json server实现todoli
    前言大家好我是歌谣最近开始在做关于前端扫盲的一些只是处理花了一周左右录制了了一个hook写法的关于todoList的视频主要用于基础知识的一个使用和处理目录#前端巅峰人才交流群私信我#第一节创建项目todolist项目技术选型React(Hook)+TS+axios+antdesign+jsonserve......
  • 【React工作记录一百一十三】ant design table项目中遇到的数据处理实例
    前言大家好我是歌谣今天需要进行一个数据处理的问题原始数据到目标数据的处理过程数据处理的过程就是逻辑推理的过程类似一道数学题的解法原始数据格式(本次以两组数据格式为例Rawdata)[{"id":1047,"name":"README.md","manufacture_id":1......
  • React环境搭建
    安装node.js全局安装create-react-appnpminstall-gcreate-react-app检查create-react-app版本create-react-app-V创建一个项目create-react-appmyapp临时安装create-react-app使用最新的create-react-app版本去创建项目npxcreate-react-appmyapp启动项目c......
  • react经典面试题解析--持续更新--day01
    一、类组件和函数组件的区别(面试常考)简单理解(所有同学都要掌握)1、类组件有生命周期,函数组件没有2、类组件需要继承Class,函数组件不需要3、类组件可以获取实例化的this,并且基于this做各种操作,函数组件不行4、类组件内部可以定义并维护state,函数组件都称为无状态了,那肯定......
  • Reactive Extensions 响应式扩展 用于事件驱动编程的库,具有可组合的声明性模型
    响应式扩展这个存储库包含四个库,它们在概念上是相关的,因为它们都与LINQoverofthings序列有关:ReactiveExtensionsfor.NET又名Rx.NET或Rx( System.Reactive ):一个用于事件驱动编程的库,具有可组合的声明性模型AsyncRx.NET(实验性预览)(System.Reactive.Async):Rx的实验......
  • 【React工作记录一百零八】前端小知识点扫盲笔记记录9
    前言我是歌谣放弃很容易但是坚持一定很酷微信公众号关注前端小歌谣带你进入前端巅峰交流群今天继续对前端知识的小结如何截取字符串<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge">......
  • 【React工作记录一百零九】前端小知识点扫盲笔记记录10
    前言我是歌谣放弃很容易但是坚持一定很酷微信公众号关注前端小歌谣带你进入前端巅峰交流群今天继续对前端知识的小结对称数<!DOCTYPEhtml><htmllang="en"> <head> <metacharset="UTF-8"/> <metahttp-equiv="X-UA-Compatible"content="IE=edge"/>......