Skip to content

CountTo 数字跳转

该组件一般用于需要滚动数字到某一个值的场景,目标要求是一个递增的值。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序
兼容中兼容中兼容中兼容中

基本使用

通过startVal设置开始值,endVal设置结束值。

vue
<tn-count-to :startVal="0" :endVal="100"></tn-count-to>

设置是否显示小数位

通过decimals设置显示的小数位,如果设置了,在滚动过程中,小数位会一起变化。如果startValendVal是带小数的,应该设置decimalsstartValendVal一样的小数位数值。

vue
<tn-count-to :startVal="0" :endVal="100.88" :decimals="2"></tn-count-to>

设置千分位分隔符

通过thousandthsSeparator配置千分位分隔符,默认为空字符串,可以设置英文逗号",",此参数表现为endVal值超过1000时,比如为"1257",那么滚动后会变成"1,257"。

vue
<tn-count-to :startVal="0" :endVal="1257" thousandthsSeparator=","></tn-count-to>

执行滚动时机

通过autoplay配置倒计时是否在组件的mounted生命周期进行初始化,如果设置autoplayfalse,就需要手动通过 ref的形式通知组件开始执行,调用的是组件内部的start()paused() 方法来开始或暂停。

vue
<template>
  <tn-count-to ref="countTo" :endVal="endVal" :autoplay="false"></tn-count-to>
</template>

<script>
  export default {
    data() {
      return {
        endVal: 1234.56,
      };
    },
    methods: {
      start() {
        this.$refs.countTo.start();
      },
      paused() {
        this.$refs.countTo.paused();
      },
      reStart() {
        this.$refs.countTo.reStart();
      },
    }
  }
</script>

API

Props

属性名说明类型默认值可选值
startVal滚动开始值Number0-
endVal滚动目标值Number0-
autoplay自定开始滚动Booleantruefalse
fontColor字体颜色String#080808颜色的十六进制值,rgba(),rgb(),TuniaoUI内置的颜色类名
fontSize字体大小Number50-
fontUnit字体大小的单位Stringrpx-
duration滚动到目标值持续的时间,单位msNumber2000-
useEasing在滚动到目标值的时候使用缓动效果Booleantruefalse
decimals显示小数的位数Number0-
decimalSeparator小数的分隔符String.-
thousandthsSeparator千分位的分隔符String--
bold字体加粗Booleanfalsetrue

Slots

none

Methods

需要通过ref手动调用。

名称说明
start开始执行滚动
reStart重新开始执行滚动
paused暂停滚动

Event

事件名称说明回调参数
end滚动结束-