小程序异步处理demo计时器setInterval()

Posted lifan1998

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序异步处理demo计时器setInterval()相关的知识,希望对你有一定的参考价值。

实现一个计时器/秒

其实就是要求对某字段每秒执行一次更新

技术分享图片
技术分享图片
技术分享图片
技术分享图片

这里用到了官方给的定时器
官方API

每秒刷新一次,所以用setInterval()方法

下面给出关键代码:

由于无关代码过多,这里尽可能贴出相关代码,但不能独立运行,关键方法已注释,使用相当简单

    /**
 * 是否已经呼出
 * 控制状态和定时器
 */
var help = false;
/**
 * 分
 */
var sec = 0;
/**
 * 秒
 */
var min = 0;
/**
 * 定时器id
 * 关闭时要用
 */
var timer ;
Page({

    data: {
     msg:‘110‘,
        label:‘一键求救‘,
    },
    /**
    * 确认呼救
    */
      confirm(){
        console.log("confirm()" )
        if(help){
          this.setData({
            label: ‘已取消‘,
            msg: ‘110‘,
            
          })
          help = false
          //清除定时器
          clearInterval(timer)
          return
        } 
        help = true
        //启动定时器
        timer = setInterval(this.timer, 1000);
        this.setData({ 
          label:‘正在呼救‘+this.data.msg,
          msg: ‘00:00‘ 
        })
      },
    /**
    * 定时器回调方法
    */
    timer(){
        sec = sec +1
        if(sec==60) {
          min = min+1
          sec = 0
        }
        let s = sec,s1 = min
        if(sec<10) s = "0"+sec
        if(min<10) s1 = "0"+min
        this.setData({
          msg: s1+":"+s
    })
}




以上是关于小程序异步处理demo计时器setInterval()的主要内容,如果未能解决你的问题,请参考以下文章

小程序坑 redirectTo 计时器 setInterval clearInterval

微信小程序 设置计时器(setInterval)

微信小程序长时间计时方法

事件循环

定时器

swoolephp5.6 swoole(demo)小测试