昨天寫了代碼,今天發現要重用,干脆就抽出來做個組件得了。代碼放在github上了。
功能:
1、最基礎的當然就是倒計時功能了。
2、可以設置倒計時結束后執行的事件。
3、可以設置倒計時執行過程中每隔多少秒,執行一次對應的事件。
用法:
引入:
var timer = require('../../plugins/wxTimer.js');
最簡單的調用方式:
var wxTimer = new timer({
beginTime:"00:00:10"
})
wxTimer.start(this);
wxTimer.stop();
倒計時結束后執行事件
var wxTimer = new timer({ beginTime:"00:00:10", complete:function(){ console.log("完成了") } }) wxTimer.start(this); wxTimer.stop();
間隔執行事件
var wxTimer = new timer({ beginTime:"00:00:10", complete:function(){ console.log("完成了") }, interval:2, intervalFn:function(){ console.log("過去了2秒"); } })
說明:
1、由於內部需要調用到小程序的setData方法,所以我們需要把this傳過去。
2、此方法會在page中生成一個名為wxTimer和wxTimerSecond的data,分別是倒計時的 時/分/秒 版本和倒計時的純秒數版本,如果需要在wxml中引用倒計時的數據直接{{wxTimer}}或者{{wxTimerSecond}}即可
其他參數:
1、beginTime 需要倒計時的時間,比如:"01:11:12",默認值為"00:00:00",也可以省略秒數,如:"01:10"
2、complete 倒計時歸零0時的回調函數,即為beginTime = "00:00:00"則立即調用
3、interval 倒計時的過程中,規定每隔幾秒執行一次intervalFn,如果為0則永遠不會執行,默認為1
4、intervalFn 每隔interval秒執行一次的函數。
效果圖:
因為沒有gif截圖軟件,所以效果圖就只有靜態圖了。