a cool && nice countdown timer
a cool && nice countdown timer component (canvas used) for vue2.x
show result 效果展示 效果图gif展示vue + canvas实现炫酷时钟倒计时效果的vue插件。移动端友好。




[Damon风的blog地址](https://www.cnblogs.com/damonFeng/) 动画步骤分析:假如设定倒计时总时间为15s, 变黄色时机为10s,变红色时机为5s。 开始倒计时后颜色为绿色。绿色含义是:倒计时的时间离结束时间还很长。 10s后变黄色。黄色的含义是:倒计时的时间离结束时间挺近了,第一次加速,起警告作用。动画中,出现快速旋转的扇形。 5s后变红色。红色的含义是:倒计时的时间马上就要结束了,第二次加速,起强烈警告作用。动画中,快速旋转的扇形速度加快。 0s倒计时结束。动画消失。静态圆形框中显示提示文字。 Installation npm 下载
npm install vue-canvas-countdown --save
import 引入
es6
import countDown from 'vue-canvas-countdown'
commonjs
const countDown = require('vue-canvas-countdown')
Usage 使用方法
<template> <div id="app" @click="fireCD"> <div class="demo"> <countDown ref="countDown" :fire="fire" time="15" :tiping="tiping" :tipend="tipend" @onStatusChange="onStatusChange" @onEnd="onEnd"/> </div> </div> </template>
<script> import countDown from 'vue-canvas-countdown' export default { name: 'App', components: { countDown }, data () { return { fire: 0, tiping: { text: '倒计时进行中', color: '#fff' }, tipend: { text: '倒计时结束', color: '#fff' } } }, methods: { fireCD () { // 配置参数(更多配置如下表) this.tiping = { text: '请下注', color: '#fff' } this.tipend = { text: '停止下注', color: '#fff' } // 启动倒计时(效果如上图所示) // 也支持:this.$refs.countDown.startCd()方式 启动倒计时 this.fire++ }, onStatusChange (payload) { console.log('倒计时状态改变:', payload) }, onEnd () { console.log('倒计时结束的回调函数') } }, mounted () { // 启动倒计时 this.fireCD() } } </script> Props 参数
属性 | 可选 | 类型 | 单位 | 默认值 | 备注 |
---|---|---|---|---|---|
fire: | 必选 | [Number] | - | 200 | 在父组件this.fire++ 即可启动倒计时(也支持:ref组件引用调用startCd方法启动倒计时) |
width,height: | 可选 | [Number] | px | 200 200 | 设置宽高 |
bgCir: | 可选 | [String] | - | rgba(0, 0, 0, .6) | 倒计时圆盘背景颜色 |
time: | 可选 | [Number] | 秒/s | 15 | 倒计时所用 |
statusChange: | 可选 | [Array] | 毫秒/ms | [10000, 500] | 倒计时状态改变的时机/时间点(绿=>黄=>红) |
tiping: | 可选 | [Object] | - | {text: '倒计时', color: '#fff'} | 倒计时进行时的静态文本内容和颜色(注意:color和text都得设置) |
tipend: | 可选 | [Object] | - | {text: 'END', color: '#fff'} | 倒计时结束时的静态文本内容和颜色(注意:color和text都得设置) |
事件名 | 方法说明 | 参数说明 |
---|---|---|
onStatusChange: | 倒计时状态的变化:从开启->�第一次加快->第二次加快->结束 (使用场景:例如给倒计时在不同状态添加音效) |
0倒计时未启动/结束, 1开始倒计时, 2倒计时第一次加快, 3倒计时第二次加快 |
onEnd: | 倒计时结束 | 等价于 onStatusChange事件0的状态 |
vue-countdown/src/components/countDown.vue
。
如果有帮助,小星星走起~~
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。