Skip to content

RollingNumber 滚动数字

RollingNumber 是一个用于显示数字滚动动画的组件,支持多种配置,包括滚动模式、开始数值、目标数值、动画持续时间、是否自动播放和小数位数等。

支持平台

安卓iosweb微信小程序支付宝小程序QQ小程序
xxx

示例

html
<template>
	<t-page @initFinished="loadingcomplete" title="滚动数字">
		<t-card class="mlrt.30" title="RollingNumber 滚动数字" sub-title="通过设置起始值、结束值、动画持续时间和小数位数的数字展示"></t-card>
		<t-group title="基础功能" content-class="fl">
			<t-rolling-number class="mbr.10" :startVal="30" :endVal="50000" :duration="7000"
				type="s"></t-rolling-number>
		</t-group>
		<t-group title="显示小数" content-class="fl">
			<t-rolling-number :startVal="30" mode="price" :endVal="50000.1555865" class="mbr.10" :decimals="2"
				:duration="4000" type="error"></t-rolling-number>
		</t-group>
		<t-group title="自由控制">
			<t-rolling-number ref="tCountTo" :startVal="30" mode="price" :endVal="50000.15" :decimals="2"
				:duration="10000" :autoplay="false" type="error"></t-rolling-number>
			<view style="padding:10px 0;">
				<t-button size="small" class="mb.15" type="primary" @click="start">开始</t-button>
				<t-button size="small" class="mb.15" type="error" @click="pause">暂停</t-button>
				<t-button size="small" class="mb.15" type="warning" @click="continues">继续</t-button>
				<t-button size="small" class="mb.15" type="success" @click="stop">结束</t-button>
			</view>
		</t-group>
		<t-group title="自定义颜色">
			<t-rolling-number class="s.45-c.blue" :startVal="30" mode="price" decimal-point="¥" :endVal="50000.15"
				:decimals="2" :duration="2000" type="error"></t-rolling-number>
			<t-rolling-number :startVal="30" mode="price" :endVal="50000" :decimals="2" :duration="3000" type="error"
				class="s.45-c.#f56c6c"></t-rolling-number>
		</t-group>
	</t-page>
</template>

<script>
	export default {
		data() {
			return {
				countToNode: null as ComponentPublicInstance | null
			};
		},
		methods: {
			loadingcomplete() {
				this.countToNode = this.$refs['tCountTo'] as ComponentPublicInstance
			},
			start() {
				this.countToNode?.$callMethod('start')
			},
			pause() {
				this.countToNode?.$callMethod('pause')
			},
			continues() {
				this.countToNode?.$callMethod('continues')
			},
			stop() {
				this.countToNode?.$callMethod('stop')
			}
		}
	}
</script>

Props

名称描述类型默认值
mode滚动模式String''
startVal开始的数值Number1000
endVal要滚动的目标数值Number2000
duration滚动到目标数值的动画持续时间,单位为毫秒(ms)Number500
autoplay设置数值后是否自动开始滚动Booleantrue
decimals小数位数Number0

Methods

名称描述
start开始滚动动画
pause暂停滚动动画
continues继续暂停的滚动动画
stop停止滚动动画并直接显示目标数值
countAnimation计算并执行滚动动画