需求

设定了监控点位置以后就需要按照一定的时间间隔取得设备的位置,并比照设定好的监控点,如果有符合条件的监控点则触发相应的动作。为了实现上述功能首先需要实现按一定时间间隔做某件事的功能--定时器。

说明

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

写在文章的最后

既然已经读到这里了,拜托大家再用一分钟时间,将文章转发到各位的朋友圈,微信群中。本公众号的成长需要您的支持!
以上就是今天的文章,欢迎点赞并推荐给您的朋友!
更新文章,请扫描下面二维码,关注微信公众号【面向对象思考】

EAUML日拱一卒-微信小程序实战:位置闹铃 (10)-定时器相关推荐

  1. EAUML日拱一卒-微信小程序实战:位置闹铃 (5)-显示所在位置的信息

    假设我们指定了多个监控点,接下来的需求就是给每个监控点取名字.如果是手动输入的话,会比较麻烦.所以位置闹铃再向前走一步,从地图上取得监控点所在位置的信息作为监控点的名称. 画面说明 当我们选定监控点以 ...

  2. EAUML日拱一卒-微信小程序实战:位置闹铃 (18)-差不多就这样了

    经过一段时间地实现和测试,位置闹铃小程序开发也渐渐接近尾声了.作为一个练习,差不多也就这样了. 今天介绍小程序的功能. 启动小程序 扫描下面的二维码即可启动位置闹铃小程序. 功能介绍 首先是主画面,第 ...

  3. EAUML日拱一卒-微信小程序实战:位置闹铃 (15)-实现监控点状态迁移功能

    简单地设计以后,就可以开始着手实现了. 接近监控点 enterAlarmCheck: function (distance, accuracy){ if (this.state == 'ready') ...

  4. EAUML日拱一卒-微信小程序实战:位置闹铃 (19)-发布微信小程序

    小程序的功能实现之后,经过一段时间地测试,接下来就是发布了. 在开发工具的上面偏右的位置,有一个[上传]按钮,按下它就可以将小程序上传到微信小程序公众号. 登录自己的小程序帐号,进入开发管理页面. 画 ...

  5. EAUML日拱一卒-微信小程序实战:位置闹铃 (17)-保存和取出设定信息

    设定了监控点之后,小程序会取得最新位置,判断各个监控点的到达,离开情况并播放提示音.很多情况下,用户会希望这些信息可以保存起来以便将来使用. 这就是今天的主题:在小程序中保存设定信息. API 位置闹 ...

  6. EAUML日拱一卒-微信小程序实战:位置闹铃 (16)-单元测试是个技术活

    程序设计,实现之后的下一个环节就是单元测试了.对于位置闹铃小程序来讲,带着设备到处移动以测试监控点的状态迁移就是一个必经之路,但是如果所有环节都通过实地测试来解决,那将耗费大量的时间和体力. 我们的选 ...

  7. EAUML日拱一卒-微信小程序实战:位置闹铃 (8)-WXML条件渲染

    需求 按照位置闹铃程序的设计,当设备接近或者离开某个区域时,可以播放提示音,也可触发记时器动作.按照设计,我们的画面是这样的. 提示音选择画面 计时器选择画面 实现方式 一般来讲,根据动作动作类型选择 ...

  8. EAUML日拱一卒-微信小程序实战:位置闹铃 (6)-播放音频

    昨天停更了一天,不是作者偷懒,而是掉到了一个坑里.本来以为播放音频很简单,但是还是遇到的各种问题,比如: 1)小程序无法播放手机存储目录中的文件,只能播放网上的或者是小程序暂存的文件. 2)播放暂存文 ...

  9. EAUML日拱一卒-微信小程序实战:位置闹铃 (20)-发布微信小程序(续)

    头一天晚上申请,到第二天早上也没有通过,所以就有了这篇续. 审批通过以后,首先手机的服务通知收到这个: 登录小程序帐号,画面的右上角也会有提示. 这时的开发管理页面是这样的: 可以看到审核版本栏版本号 ...

  10. EAUML日拱一卒-微信小程序实战:位置闹铃 (14)-分析监控点状态

    将监控点包装成一个类以后,接下来应该就是设计和实现监控点功能了.今天先是设计.我们分接近监控点和离开监控点两种情况讨论. 接近监控点 ready状态 监控点工作状态,小程序会对设备位置进行监控,如果有 ...

最新文章

  1. 电子书下载:Building Websites with DotNetNuke 5
  2. Struts2中s:iterator/s:iterator标签的使用:
  3. 7.MongoDB与python交互
  4. cmyk列印颜色_列印
  5. SiT5711:±5~±8ppb超高精度Stratum 3E恒温振荡器OCXO,1-60MHz
  6. 【自考】马克思主义基本原理概论—容易混淆的点
  7. Burp Suite工具详解
  8. NPDP知识推送-第一章新产品开发战略(1)
  9. 【综合类型第 10 篇】什么是时间戳
  10. 进入四强的球队Java
  11. 清华系激光雷达公司,成了量产元年最大的黑马
  12. ERP和CRM的分工
  13. 树莓派+ubuntu18.04+ROS-melodic+MAVROS+librealsense+vio+realsense_ros
  14. 刚创建的springboot项目启动后访问controll报404
  15. 目前最顶级的多视角立体影像匹配算法
  16. Google Analytics(分析)个人资格认证2018-2019-2020最新中英文题库
  17. java jxl_Java操作Jxl实现数据交互。三部曲——《第三篇》
  18. 深度linux运行wine,如何在Deepin深度桌面环境下直接运行exe安装Wine
  19. 激情摩托情感纽带网站404页面源码
  20. Win7codecs+wmp12播放所有音视频

热门文章

  1. 互联网创业公司如何解决人员流失率过高的问题?
  2. 折纸多少次可以达到珠穆朗玛峰的高度
  3. PyCharm SyntaxError: Non-UTF-8 code starting with \xbb 处理
  4. 解码者:数学探秘之旅——读书笔记(一)
  5. 头歌:立体几何计算题
  6. maven管理冲突jar包
  7. oracle数据库dba面试题,DBA笔试题5:SQL汇总
  8. 告诉你,如何成就DBA职业生涯
  9. Vue项目之登录注册
  10. vue-cli 登录注册的实现