Vue3 数字滚动插件 vue-countup-v3

news2024/11/18 1:29:38

文章目录

    • 介绍
    • 效果
    • 安装
    • 属性
    • 事件
    • 配置项
    • 完整样例

介绍

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

效果

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

test

安装

使用该插件需要安装依赖,可以通过 npm 命令进行安装:

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>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/700199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件测试职业发展的7个阶段,哪个都吃香!

首先谈谈我在软件测试行业的亲身经历&#xff1a;我的一位同事曾经很认真地问过我一个问题&#xff0c;他说他现在从事软件测试工作已经4年了&#xff0c;但是他不知道现在的工作和自己在工作3年时有什么不同&#xff0c;他想旁观者清&#xff0c;也许我能回答他的问题。此外他…

手写vue-diff算法(一)

Vue初始化流程 1.Vue流程图 Vue流程图&#xff1a; Vue的初始化流程&#xff0c;默认会创建一个Vue实例&#xff0c;执行初始化、挂载、模板编译操作&#xff0c;模板被编译成为render函数&#xff1b;在render函数初始化时会执行取值操作&#xff0c;从而进入getter方法对当…

【科研入门】会议、期刊、出版社、文献数据库、引文数据库、SCI分区、影响因子等基础科研必备知识

大家好&#xff0c;我是洲洲&#xff0c;欢迎关注&#xff0c;一个爱听周杰伦的程序员。关注公众号【程序员洲洲】即可获得10G学习资料、面试笔记、大厂独家学习体系路线等…还可以加入技术交流群欢迎大家在CSDN后台私信我&#xff01; 本文目录 一、会议与期刊二、如何辨别是否…

【UE5 Cesium】07-Cesium for Unreal 从一个地点飞行到另一个地点(下)

UE版本&#xff1a;5.1 介绍 本文以在基督城&#xff08;新西兰&#xff09;和悉尼&#xff08;澳大利亚&#xff09;这两个城市间为例&#xff0c;在上一篇文章&#xff08;【UE5 Cesium】06-Cesium for Unreal 从一个地点飞行到另一个地点&#xff08;上&#xff09;&#…

vant-weapp源码解析---Tab标签页

这个标签栏&#xff0c;属于一个很常见的组件&#xff0c;一般我不用这个组件&#xff0c;自己手写一个scroll-view以及样式&#xff0c;更加轻便。但是我写的最简单的标签页没有滚动效果&#xff0c;以及选中标签动画效果。因此根据标签栏滚动学习下&#xff0c;并且自己手写一…

动态规划的入门

https://www.bilibili.com/video/BV13Q4y197Wg/ 动态规划解题步骤 —— carl 动态规划&#xff0c;英文&#xff1a;Dynamic Programming&#xff0c;简称DP&#xff0c;如果某一问题有很多重叠子问题&#xff0c;使用动态规划是最有效的。 所以动态规划中每一个状态一定是由…

Postman 最被低估的功能,自动化接口测试效率简直无敌!

目录 该篇文章针对已经掌握 Postman 基本用法的读者&#xff0c;即对接口相关概念有一定了解、已经会使用 Postman 进行模拟请求的操作。 接口结果判断 功能区 脚本相关 代码模板 集合(批量)测试 批量执行 变化的参数数据 请求依赖问题 接口执行顺序 数据传递 解决依…

系统出错。发生系统错误 1067。进程意外终止。

问题描述 使用管理员cmd&#xff0c;任务管理器均无法启动mysql。 报错提示信息&#xff1a;系统出错。发生系统错误 1067。进程意外终止。 错误排查 1.检查3306端口是否被占用 在cmd输入netstat -aon|findstr 3306&#xff0c;结果如下&#xff1a; 如果你发现是端口被占用…

OpenAI 又赢麻了谷歌 DeepMind 创始人刚称 Gemini 能碾压 GPT-4

整理 | 褚杏娟&#xff0c;核子可乐 谷歌在上个月的开发者大会上公布了一系列 AI 新项目&#xff0c;当时首次亮相的 Gemini 曾受到不少嘲讽。但近日&#xff0c;DeepMind 联合创始人兼 CEO Demis Hassabis 自曝&#xff0c;工程师们正在使用 AlphaGo 的技术来开发 Gemini&…

Java框架之spring 的 AOP 和 IOC

写在前面 本文一起看下spring aop 和 IOC相关的内容。 1&#xff1a;spring bean核心原理 1.1&#xff1a;spring bean的生命周期 spring bean生命周期&#xff0c;参考下图&#xff1a; 我们来一步步的看下。 1 其中1构造函数就是执行类的构造函数完成对象的创建&#x…

【Java】Java核心 79:Git 教程(2)Git 安装

文章目录 目标内容总结 上一篇我们讲到&#xff1a;Git是一个分布式版本控制系统&#xff0c;常用于协同开发和版本管理的工具。它可以跟踪文件的修改、记录历史版本&#xff0c;并支持多人协同工作。通过Git&#xff0c;你可以轻松地创建和切换分支、合并代码、回滚修改等操作…

Kicad编译

Windows 1.安装visual studio Pro 2019 以上版本&#xff0c;建议2022&#xff0c;自行破解&#xff0c;安装时一定要勾选上cmake工具&#xff1b;安装Git bash 2.去Gitlab上fork kicad的master分支到自己的gitlab仓库上&#xff0c;在本地创建kicad-source路径&#xff0c;初…

【debug】:安装mmcv-full==1.2.4包过程报错

【debug】:安装mmcv-full1.2.4包过程报错This error originates from a subprocess, and is likely not a problem with pip WARNING: Ignoring invalid distribution -illow (d:\anaconda3\envs\pytorch\lib\site-packages) 这是由于安装包过程中曾经出现问题&#xff0c;会影…

生成特定相关系数的变量

本文转载自根据相关性生成变量 已知一组变量a&#xff0c;想要生成另一组变量b&#xff0c;要求a与b之间相关性为c。 实现思路如下&#xff1a; 设固定变量为x1&#xff0c;随机变量x2&#xff0c;相关系数为rho。x1与x2之间的相关性可以转化为向量之间的夹角问题&#xff0c;…

Linux与Windows:操作系统之争及个人体验比较

在当今数码化的世界中&#xff0c;操作系统扮演着关键的角色。Linux和Windows作为最受欢迎和广泛使用的操作系统之一&#xff0c;具有不同的特点和优势。作为一个AI模型&#xff0c;我虽然没有真正的使用经验&#xff0c;但我可以就这两个操作系统进行比较&#xff0c;并提供一…

pointclouds 点云 demo 中的资源文件如pcd找不到的问题

一、问题描述 点云官网提供了许多学习点云类库的例子和demo &#xff0c;但是在github中找到tutorials后执行 mkdir build cd build cmake .. make 之后却发现没有 资源文件&#xff0c;怎么办 如&#xff1a;pcl-pcl-1.7.2\doc\tutorials\content\sources\normal_estimation…

QVHZO-A-06-3/U0/WG直动式比例流量阀控制器

QVHZO-A-06-3/U0/WG、QVHZO-A-06-12/I/PE、QVHZO-A-06-18/I、QVHZO-A-06-36/U0、QVHZO-A-06-45/I、QVKZOR-A-10-65/I/PE、QVKZOR-A-10-90/I直动式比例流量阀特点&#xff1a; 具有恒压差流量补偿功能 通过比例线圈起动 用于底板安装: 油口安装面符合ISO4401(规格尺寸6和10)…

基于单片机智能温室大棚控制系统

功能介绍 以51单片机作为主控系统&#xff1b; DS18B20温度采集模块检测温度&#xff1b; 光敏电阻和ADC0832组成的光照检测模块&#xff1b; 土壤湿度检测模块检测土壤湿度&#xff1b; CO2检测模块检测CO2浓度&#xff1b; LCD1602显示模块显示测量值、 若温度小于温度最…

Middleware ❀ Zookeeper功能与使用详解

文章目录 1、功能简述1.1 服务目标1.2 文件系统 - 树状结构1.3 数据节点Znode类型1.4 变更通知 - Watcher1.4.1 工作机制1.4.1.1 Client注册1.4.1.2 Server处理1.4.1.3 Client回调 1.4.2 监听特性 1.5 权限控制 - ACL1.5.1 模式 - scheme1.5.2 权限 - Permission 1.6 选举机制1…

Springboot如何手动连接库并获取指定表结构

一、前言&#x1f525; 通过&#xff0c;在使用springboot框架之后&#xff0c;就很少涉及到手动连接数据库的方式了&#xff0c;但bug菌有遇到这么一个需求场景&#xff0c;给到你的是无上限的数据库连接信息&#xff0c;要求你能按连接信息指定获取表数据&#xff0c;突然我就…