首页 > 开发 > Javascript > 正文

基于vue2的canvas时钟倒计时组件步骤解析

2020-02-25 01:56:53
字体:
来源:转载
供稿:网友

今天给大家介绍一款基于vue2的canvas时钟倒计时组件,这个时钟倒计时组件采用canvas动画的炫酷动画效果形式,根据剩余时间的多少变换颜色和旋转扇形的速度,适合抢购、拍卖、下注等业务场景,且对移动端友好。

具体步骤分析:

假如设定倒计时总时间为15s, 变黄色时机为10s,变红色时机为5s。

1、开始倒计时后颜色为绿色。绿色含义是:倒计时的时间离结束时间还很长。

2、10s后变黄色。黄色的含义是:倒计时的时间离结束时间挺近了,起警告作用。动画中,出现快速旋转的扇形。

3、5s后变红色。红色的含义是:倒计时的时间马上就要结束了,起强烈警告作用。动画中,快速旋转的扇形速度加快。

4、0s倒计时结束。动画消失。静态圆形框中显示提示文字。

安装

我们使用npm安装。

npm install vue-canvas-countdown --save-dev

使用

首先在模板文件中加入组件信息。

<template> <div id="app" @click="fireCD">  <div class="demo">   <countDown     :fire="fire"    time="15"    :tiping="tiping"    :tipend="tipend"    @onEnd="onEnd"/>   </div> </div></template>

然后加入js部分代码:

<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.fire++   },  onEnd () {   console.log('倒计时结束的回调函数')  } }}</script>

属性选项

属性 类型 单位 默认值 备注
fire: [Number] - 200 必选,在父组件this.fire++ 即可启动倒计时
width,height: [Number] px 200 200 设置宽高
bgCir: [String] - rgba(0, 0, 0, .6) 倒计时圆盘背景颜色
time: [Number] 秒/s 15 倒计时所用
statusChange: [Array] 毫秒/ms [10000, 500] 倒计时状态改变的时机/时间点(绿=>黄=>红)
tiping: [Object] -
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表