介绍

vue-countup-v3 插件是一个基于 Vue3 的数字动画插件,用于在网站或应用程序中创建带有数字动画效果的计数器。通过该插件,我们可以轻松地实现数字的递增或递减动画,并自定义其样式和动画效果。该插件可以用于许多场景,例如展示网站页面的访问量,展示应用程序的下载量,以及展示任何需要动态展示数字的场景等。

效果

该插件支持更多的参数自定义,比如数字的样式、动画的播放方向、循环播放等等。通过这些参数,可以实现更加丰富的数字动画效果。一个简单的效果如下:
在这里插入图片描述

安装

npm i vue-countup-v3

属性

属性类型默认值描述
endValNumber | String-结束值
startValNumber | String0起始值
durationNumber2.5动画时长,单位:秒
decimalPlacesNumber0小数点位数
autoplayBooleantrue是否自动计数
loopBoolean | Numberfalse循环次数,有限次数 / 无限循环
delayNumber0loop 循环的间隔时间,单位:秒
optionsObject-配置项

事件

时间描述返回值
@initCountUp 实例初始化完成触发CountUp 实例
@finished计数结束时触发-

配置项

配置项类型默认值描述
startValnumber0开始数值
decimalPlacesnumber0小数点位数
durationnumber2动画时长,单位:秒
useGroupingbooleantrue是否使用千位分隔符)显示
useIndianSeparatorsbooleanfalse是否使用印度数位分隔符
useEasingbooleantrue是否开启数字增加过程中的缓动方式
smartEasingThresholdnumber999设置一个阈值用于调整数字计数器的动画效果
smartEasingAmountnumber0.5控制着数字变化的缓动效果
separatorstring,千分位分隔符
decimalstring.小数点分隔符
easingFnnumbereaseOutExpo用于控制数字变化的缓动函数
formattingFnstring-用于格式化计数器的值
prefixstring-数值前缀
suffixstring-数值后缀
numeralsstring[]-数字符号替换 0 - 9
enableScrollSpybooleantrue在可视范围内才开始动画
scrollSpyDelaynumber50ms目标进入可视范围内后的延迟时间(毫秒)
scrollSpyOncebooleanfalse滚动到该元素时执行数字滚动动画是否执行一次
onCompleteCallback--回调函数,可以在计数结束时执行
plugin--用于替换动画效果

完整样例

博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

<script setup lang="ts">
  import { ref } from 'vue'
  import CountUp from 'vue-countup-v3'
  import type { ICountUp, CountUpOptions } from 'vue-countup-v3'
  
  const endValueRef = ref(2022.22)
  // coutup.js options
  const options: CountUpOptions = {
    separator: '❤️'
    // ...
  }
  let countUp: ICountUp | undefined
  const onInit = (ctx: ICountUp) => {
    console.log('init', ctx)
    countUp = ctx
  }
  const onFinished = () => {
    console.log('finished')
  }
</script>

<template>
  <count-up 
    :end-val="endValueRef"
    :duration="2.5"
    :decimal-places="2"
    :options="options"
    :loop="2"
    :delay="2"
    @init="onInit"
    @finished="onFinished"></count-up>
</template>

转发:https://blog.csdn.net/qq_20185737/article/details/131454676

GitHub 加速计划 / vu / vue
207.55 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:3 个月前 )
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 5 个月前
e428d891 Updated Browser Compatibility reference. The previous currently returns HTTP 404. 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐