EA&UML日拱一卒-微信小程序實戰:位置鬧鈴 (10)-定時器

需求


設定了監控點位置以後就需要按照一定的時間間隔取得設備的位置,並比照設定好的監控點,如果有符合條件的監控點則觸發相應的動作。爲了實現上述功能首先需要實現按一定時間間隔做某件事的功能--定時器。


說明


function startTimer(interval, onTimer) {

    var time = setTimeout(function () {

        onTimer();

        startTimer(interval, onTimer);

        },

        interval

    )

}


函數startTimer內部調用了setTimeout函數,這個函數有兩個參數:一個是Timeout發生時被調用的回調函數(借用C語言的說法),一個是時間間隔,單位是毫秒。

startTimer執行之後,系統開始計時。當指定的事件間隔經過以後,回調函數被執行:首先調用onTimer函數,它由startTimer的利用者指定。接下來再次調用startTimer函數,用於啓動下一次定時器動作。如此循環往復。


使用時就簡單了,例如可以像下面這樣使用startTimer函數。


onLoad:function(){

   startTimer(1000,function(){

     console.log("OnTimer!")

   });

 },


目前雖然只是輸出log,加下來的幾天裏,我們會以這裏爲入口,實現定期取得目前位置,確認監控點的功能。


小程序代碼


最新代碼已經將代碼上傳到GitHub。


工程全體:

https://github.com/xueweiguo/alarmmap


index.js

https://raw.githubusercontent.com/xueweiguo/alarmmap/master/pages/index/index.js


寫在文章的最後


既然已經讀到這裏了,拜託大家再用一分鐘時間,將文章轉發到各位的朋友圈,微信羣中。本公衆號的成長需要您的支持!
以上就是今天的文章,歡迎點贊並推薦給您的朋友!

閱讀更多更新文章,請掃描下面二維碼,關注微信公衆號【面向對象思考】