微信小程序倒計時組件更新,加入時間校準、多計時器功能

針對在IOS下息屏和掛起狀態下倒計時不會繼續,以及在安卓狀態下息屏致使變慢的問題進行的一次更新,具體效果請參考小程序 番茄鬧鐘。小程序

暫時沒法解決的痛點: 
一、在息屏和掛起下的倒計時結束之後須要跳轉頁面,可是有部分解決方案能夠看我以前寫的帖子,在這裏 
二、倒計時結束之後的函數,以及每隔多少秒執行的函數都不會執行,只有在從新進來以後纔會執行。微信

wxTimer函數

介紹:用於在微信小程序中進行倒計時的組件。 
功能
一、最基礎的固然就是倒計時功能了。 
二、能夠設置倒計時結束後執行的事件。 
三、能夠設置倒計時執行過程當中每隔多少秒,執行一次對應的事件。ui

用法 
引入:this

var timer = require('../../plugins/wxTimer.js');xml

最簡單的調用方式:事件

var wxTimer = new timer({get

  beginTime:"00:00:10"回調函數

})io

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秒");

    }

})

校準時間:

wxTimer.calibration();

注意: 
一、因爲內部須要調用到小程序的setData方法,因此咱們須要把this傳過去。 
二、此方法會在page中生成一個名爲wxTimer和wxTimerSecond的data,分別是倒計時的 時/分/秒 版本和倒計時的純秒數版本,若是須要在wxml中引用倒計時的數據直接{{wxTimer}}或者{{wxTimerSecond}}便可

其餘參數: 
一、beginTime 須要倒計時的時間,好比:"01:11:12",默認值爲"00:00:00",也能夠省略秒數,如:"01:10" 
二、complete 倒計時歸零0時的回調函數,若是爲beginTime = "00:00:00"則當即調用 
三、interval 倒計時的過程當中,規定每隔幾秒執行一次intervalFn,若是爲0則永遠不會執行,默認爲1 
四、intervalFn 每隔interval秒執行一次的函數。

歷史更新 

2017.03.22 應對在息屏和掛起狀態下倒計時沒法進行的問題,加入了校準功能,能夠在onShow()函數中直接調用wxTimer.calibration()來校準時間。

相關文章
相關標籤/搜索