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


写在文章的最后


既然已经读到这里了,拜托大家再用一分钟时间,将文章转发到各位的朋友圈,微信群中。本公众号的成长需要您的支持!
以上就是今天的文章,欢迎点赞并推荐给您的朋友!

阅读更多更新文章,请扫描下面二维码,关注微信公众号【面向对象思考】