基于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-cli本地環(huán)境API代理設(shè)置和解決跨域
這篇文章主要介紹了詳解vue-cli本地環(huán)境API代理設(shè)置和解決跨域,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09
vue-cli3使用 DllPlugin 實(shí)現(xiàn)預(yù)編譯提升構(gòu)建速度
這篇文章主要介紹了vue-cli3使用 DllPlugin 實(shí)現(xiàn)預(yù)編譯提升構(gòu)建速度 ,需要的朋友可以參考下2019-04-04
在Vue項(xiàng)目中使用snapshot測(cè)試的具體使用
這篇文章主要介紹了在Vue項(xiàng)目中使用snapshot測(cè)試的具體使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-04-04
vue實(shí)現(xiàn)滾動(dòng)條始終懸浮在頁(yè)面最下方
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)滾動(dòng)條始終懸浮在頁(yè)面最下方,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
vue源碼解讀子節(jié)點(diǎn)優(yōu)化更新
這篇文章主要為大家介紹了vue源碼解讀子節(jié)點(diǎn)優(yōu)化更新示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
vue全局實(shí)現(xiàn)數(shù)字千位分隔符格式
這篇文章主要為大家詳細(xì)介紹了vue全局實(shí)現(xiàn)數(shù)字千位分隔符格式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
vue如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)的開(kāi)始和結(jié)束
這篇文章主要介紹了vue如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)的開(kāi)始和結(jié)束,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
Element樹形控件el-tree懶加載并設(shè)置默認(rèn)展開(kāi)和選中的效果
本文主要介紹了Element樹形控件el-tree懶加載并設(shè)置默認(rèn)展開(kāi)和選中的效果,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01

