基于vue2的canvas時(shí)鐘倒計(jì)時(shí)組件步驟解析
今天給大家介紹一款基于vue2的canvas時(shí)鐘倒計(jì)時(shí)組件,這個(gè)時(shí)鐘倒計(jì)時(shí)組件采用canvas動(dòng)畫的炫酷動(dòng)畫效果形式,根據(jù)剩余時(shí)間的多少變換顏色和旋轉(zhuǎn)扇形的速度,適合搶購(gòu)、拍賣、下注等業(yè)務(wù)場(chǎng)景,且對(duì)移動(dòng)端友好。
具體步驟分析:
假如設(shè)定倒計(jì)時(shí)總時(shí)間為15s, 變黃色時(shí)機(jī)為10s,變紅色時(shí)機(jī)為5s。
1、開(kāi)始倒計(jì)時(shí)后顏色為綠色。綠色含義是:倒計(jì)時(shí)的時(shí)間離結(jié)束時(shí)間還很長(zhǎng)。
2、10s后變黃色。黃色的含義是:倒計(jì)時(shí)的時(shí)間離結(jié)束時(shí)間挺近了,起警告作用。動(dòng)畫中,出現(xiàn)快速旋轉(zhuǎn)的扇形。
3、5s后變紅色。紅色的含義是:倒計(jì)時(shí)的時(shí)間馬上就要結(jié)束了,起強(qiáng)烈警告作用。動(dòng)畫中,快速旋轉(zhuǎn)的扇形速度加快。
4、0s倒計(jì)時(shí)結(jié)束。動(dòng)畫消失。靜態(tài)圓形框中顯示提示文字。
安裝
我們使用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: '倒計(jì)時(shí)進(jìn)行中',
color: '#fff'
},
tipend: {
text: '倒計(jì)時(shí)結(jié)束',
color: '#fff'
}
}
},
methods: {
fireCD () {
// 配置參數(shù)(更多配置如下表)
this.tiping = {
text: '請(qǐng)下注',
color: '#fff'
}
this.tipend = {
text: '停止下注',
color: '#fff'
}
// 啟動(dòng)倒計(jì)時(shí)(效果如上圖所示)
this.fire++
},
onEnd () {
console.log('倒計(jì)時(shí)結(jié)束的回調(diào)函數(shù)')
}
}
}
</script>
屬性選項(xiàng)
| 屬性 | 類型 | 單位 | 默認(rèn)值 | 備注 |
|---|---|---|---|---|
| fire: | [Number] | - | 200 | 必選,在父組件this.fire++ 即可啟動(dòng)倒計(jì)時(shí) |
| width,height: | [Number] | px | 200 200 | 設(shè)置寬高 |
| bgCir: | [String] | - | rgba(0, 0, 0, .6) | 倒計(jì)時(shí)圓盤背景顏色 |
| time: | [Number] | 秒/s | 15 | 倒計(jì)時(shí)所用 |
| statusChange: | [Array] | 毫秒/ms | [10000, 500] | 倒計(jì)時(shí)狀態(tài)改變的時(shí)機(jī)/時(shí)間點(diǎn)(綠=>黃=>紅) |
| tiping: | [Object] | - | {text: '倒計(jì)時(shí)', color: '#fff'} | 倒計(jì)時(shí)進(jìn)行時(shí)的靜態(tài)文本內(nèi)容和顏色(注意:color和text都得設(shè)置) |
| tipend: | [Object] | - | {text: 'END', color: '#fff'} | 倒計(jì)時(shí)結(jié)束時(shí)的靜態(tài)文本內(nèi)容和顏色(注意:color和text都得設(shè)置) |
總結(jié)
以上所述是小編給大家介紹的基于vue2的canvas時(shí)鐘倒計(jì)時(shí)組件步驟解析,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- vue2實(shí)現(xiàn)簡(jiǎn)易時(shí)鐘效果
- Vue編寫炫酷的時(shí)鐘插件
- Vue實(shí)現(xiàn)數(shù)字時(shí)鐘效果
- vue實(shí)現(xiàn)電子時(shí)鐘效果
- vue 實(shí)現(xiàn)LED數(shù)字時(shí)鐘效果(開(kāi)箱即用)
- vue簡(jiǎn)單練習(xí) 桌面時(shí)鐘的實(shí)現(xiàn)代碼實(shí)例
- vue+canvas實(shí)現(xiàn)炫酷時(shí)鐘效果的倒計(jì)時(shí)插件(已發(fā)布到npm的vue2插件,開(kāi)箱即用)
- vue.js實(shí)現(xiàn)帶日期星期的數(shù)字時(shí)鐘功能示例
- 用Vue.js開(kāi)發(fā)網(wǎng)頁(yè)時(shí)鐘
相關(guān)文章
vue.js的vue-cli腳手架中使用百度地圖API的實(shí)例
今天小編就為大家分享一篇關(guān)于vue.js的vue-cli腳手架中使用百度地圖API的實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01
客戶端(vue框架)與服務(wù)器(koa框架)通信及服務(wù)器跨域配置詳解
本篇文章主要介紹了客戶端(vue框架)與服務(wù)器(koa框架)通信及服務(wù)器跨域配置詳解,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08
element validate驗(yàn)證函數(shù)不執(zhí)行的原因分析
這篇文章主要介紹了element validate驗(yàn)證函數(shù)不執(zhí)行的原因分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
Vue計(jì)算屬性中reduce方法實(shí)現(xiàn)遍歷方式
這篇文章主要介紹了Vue計(jì)算屬性中reduce方法實(shí)現(xiàn)遍歷方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
Vue項(xiàng)目的甘特圖組件之dhtmlx-gantt使用教程和實(shí)現(xiàn)效果展示(推薦)
文章介紹了如何使用dhtmlx-gantt組件來(lái)實(shí)現(xiàn)公司的甘特圖需求,并提供了一個(gè)簡(jiǎn)單的Vue組件示例,文章還分享了一些配置項(xiàng),如格式化表頭日期、設(shè)置甘特圖尺寸、啟用只讀模式、設(shè)置表格列等,感興趣的朋友一起看看吧2025-02-02
vue-cli創(chuàng)建項(xiàng)目及項(xiàng)目結(jié)構(gòu)解析
上一篇我們安裝了vue-cli,接下來(lái)我們就使用該腳手架進(jìn)行創(chuàng)建項(xiàng)目,這篇文章主要介紹了vue-cli創(chuàng)建項(xiàng)目以及項(xiàng)目結(jié)構(gòu)的相關(guān)資料,需要的朋友可以參考下面文章的具體內(nèi)容2021-10-10
Vue如何實(shí)現(xiàn)利用vuex永久儲(chǔ)存數(shù)據(jù)
這篇文章主要介紹了Vue如何實(shí)現(xiàn)利用vuex永久儲(chǔ)存數(shù)據(jù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04

