小程序-计时器bug

小程序ios计时器bug

本人在开发小程序的时候项目需要用到扫码开门之后记录时间,所以需要用到一个计时器这里出现了问题:

计时器不能清除干净


官方提供了计时器方法:

function formatTime(time) {
  if (typeof time !== 'number' || time < 0) {
    return time
  }
  var hour = parseInt(time / 3600)
  time = time % 3600
  var minute = parseInt(time / 60)
  time = time % 60
  var second = time

  return ([hour, minute, second]).map(function (n) {
    n = n.toString()
    return n[1] ? n : '0' + n
  }).join(':')
}

第二步:你需要定义一个全局变量

var recordTimeInterval="";
recordTimeInterval = setInterval(function(){console.log(1)},1000)
//清除动作
clearInterval(recordTimeInterval);

但是这样在ios上你会发现时间是被清零了,但是计时器还在跑,解:(再加一句,建议以后使用计时器都这样操作)

   recordTimeInterval="";

补充,后来又遇到了问题发现计时器还是在ios上跑,最后的完美解决方案是,使用的时候在前面加一句:

clearInterval(recordTimeInterval);

完整的:

var recordTimeInterval="";//定义
//使用模块

clearInterval(recordTimeInterval);
recordTimeInterval="";
recordTimeInterval = setInterval(function(){console.log(1)},1000)
//可以说是非常保险了,这个是针对ios小程序的,安卓没有问题,可写可不写

猜你喜欢

转载自blog.csdn.net/cx091/article/details/79311614