基于vue2的canvas时钟倒计时组件步骤解析
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了基于vue2的canvas时钟倒计时组件步骤解析,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1999字,纯文字阅读大概需要3分钟。
内容图文
今天给大家介绍一款基于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] | - | {text: '倒计时', color: '#fff'} | 倒计时进行时的静态文本内容和颜色(注意:color和text都得设置) |
tipend: | [Object] | - | {text: 'END', color: '#fff'} | 倒计时结束时的静态文本内容和颜色(注意:color和text都得设置) |
总结
以上所述是小编给大家介绍的基于vue2的canvas时钟倒计时组件步骤解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
内容总结
以上是互联网集市为您收集整理的基于vue2的canvas时钟倒计时组件步骤解析全部内容,希望文章能够帮你解决基于vue2的canvas时钟倒计时组件步骤解析所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。