当前位置:首页 > 科技  > 软件

Vue3 实现超级有趣的功能:数字增长动画!!

来源: 责编: 时间:2024-04-19 09:25:20 220观看
导读前言大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~背景平时浏览一些跟数字有关的网页的时候,可能你会发现数字并不是直接从 0 变成 99999 的,这样会很生硬,而是会有一个从 0

前言

大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~aFE28资讯网——每日最新资讯28at.com

背景

平时浏览一些跟数字有关的网页的时候,可能你会发现数字并不是直接从 0 变成 99999 的,这样会很生硬,而是会有一个从 0 增长到 99999 的动画效果,如下图aFE28资讯网——每日最新资讯28at.com

图片图片aFE28资讯网——每日最新资讯28at.com

那这个效果要怎么实现呢?其实挺简单的,也挺有趣的,继续往下看吧~aFE28资讯网——每日最新资讯28at.com

useNumberAnimation

我们创建一个文件 use-number-animation.ts 来写这个 hooksaFE28资讯网——每日最新资讯28at.com

确定参数

首先来确定这个函数需要接受什么参数:aFE28资讯网——每日最新资讯28at.com

  • from:起始数字
  • to:最终数字
  • duration:动画延迟间隔
  • onProgress:增长回调函数

图片图片aFE28资讯网——每日最新资讯28at.com

requestAnimationFrame

图片图片aFE28资讯网——每日最新资讯28at.com

可以看到数字是在不停变化的,所以我们需要有一个定时任务去让这个数字一直变化才行,那么用 setInterval 吗?不是的,显然用 requestAnimationFrame 性能会更佳,它会在浏览器下一帧重绘之前执行~aFE28资讯网——每日最新资讯28at.com

图片图片aFE28资讯网——每日最新资讯28at.com

增长速度

图片图片aFE28资讯网——每日最新资讯28at.com

可以看到数字在不断增长,那么既然是增长,就需要计算增长速度,增长速度要怎么算呢?aFE28资讯网——每日最新资讯28at.com

假设我要用3000ms的时间去从0增长到378291.668,那增长速度是不是 (378291.668 - 0) / 3000呢?aFE28资讯网——每日最新资讯28at.com

图片图片aFE28资讯网——每日最新资讯28at.com

由此我们可以知道增长速度 speed = (to - from) / duration;aFE28资讯网——每日最新资讯28at.com

图片aFE28资讯网——每日最新资讯28at.com

啥时候终止增长?

啥时候终止增长呢?其实很简单,那就是从开始增长开始,经过的时间大于 duration 时,就终止,这个时候说明动画必须要结束的~aFE28资讯网——每日最新资讯28at.com

最终代码

可以得出最终的代码为aFE28资讯网——每日最新资讯28at.com

图片图片aFE28资讯网——每日最新资讯28at.com

使用方式如下aFE28资讯网——每日最新资讯28at.com

图片aFE28资讯网——每日最新资讯28at.com

最终达到数字增长的动画效果~aFE28资讯网——每日最新资讯28at.com

图片 图片 aFE28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-84002-0.htmlVue3 实现超级有趣的功能:数字增长动画!!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Git Worktree 让你再也无需切换分支!

下一篇: WPF魔法:轻松实现依赖注入与控制反转提升代码优雅性与可维护性

标签:
  • 热门焦点
  • 对标苹果的灵动岛 华为带来实况窗功能

    继苹果的灵动岛之后,华为也在今天正式推出了“实况窗”功能。据今天鸿蒙OS 4.0的现场演示显示,华为的实况窗可以更高效的展现出实时通知,比如锁屏上就能看到外卖、打车、银行
  • 0糖0卡0脂 旭日森林仙草乌龙茶优惠:15瓶到手29元

    旭日森林无糖仙草乌龙茶510ml*15瓶平时要卖为79.9元,今日下单领取50元优惠券,到手价为29.9元。产品规格:0糖0卡0脂,添加草本仙草汁,清凉爽口,富含茶多酚,保留
  • 十个可以手动编写的 JavaScript 数组 API

    JavaScript 中有很多API,使用得当,会很方便,省力不少。 你知道它的原理吗? 今天这篇文章,我们将对它们进行一次小总结。现在开始吧。1.forEach()forEach()用于遍历数组接收一参
  • 一年经验在二线城市面试后端的经验分享

    忠告这篇文章只适合2年内工作经验、甚至没有工作经验的朋友阅读。如果你是2年以上工作经验,请果断划走,对你没啥帮助~主人公这篇文章内容来自 「升职加薪」星球星友 的投稿,坐
  • 得物效率前端微应用推进过程与思考

    一、背景效率工程随着业务的发展,组织规模的扩大,越来越多的企业开始意识到协作效率对于企业团队的重要性,甚至是决定其在某个行业竞争中突围的关键,是企业长久生存的根本。得物
  • 东方甄选单飞:有些鸟注定是关不住的

    文/彭宽鸿编辑/罗卿东方甄选创始人俞敏洪带队的“7天甘肃行”直播活动已在近日顺利收官。成立后一年多时间里,东方甄选要脱离抖音自立门户的传闻不绝于耳,“7
  • 三星获批量产iPhone 15全系屏幕:苹果史上最惊艳直屏

    按照惯例,苹果将继续在今年9月举办一年一度的秋季新品发布会,有传言称发布会将于9月12日举行,届时全新的iPhone 15系列将正式与大家见面,不出意外的话
  • 超级标准版旗舰!iQOO 11S全球首发iQOO超算独显芯片

    上半年已接近尾声,截至目前各大品牌旗下的顶级旗舰都已悉数亮相,而下半年即将推出的顶级旗舰已经成为了数码圈爆料的主流,其中就包括全新的iQOO 11S系
  • “买真退假” 这种“羊毛”不能薅

    □ 法治日报 记者 王春   □ 本报通讯员 胡佳丽  2020年初,还在上大学的小东加入了一个大学生兼职QQ群。群主“七王”在群里介绍一些刷单赚
Top