收藏
回答

小程序定义一个全局定时器需要手动销毁吗?在哪个生命周期操作呢?

需要在小程序启动时就设置一个定时器,隔一段时间运行一次,目前是在app.js的onLaunch中setInterval

如果小程序销毁的话定时器也会被销毁吧?这样还需要手动去销毁定时器吗?如果需要的话是在哪个生命周期呢?

回答关注问题邀请回答
收藏

2 个回答

  • 默
    2021-02-26

    不用 也没有全局可销毁的地方

    在你设置定时器之前 清除下以这个命名的定时器就行

    2021-02-26
    有用 1
    回复 1
    • 阿糖
      阿糖
      2021-02-26
      好的,谢谢!
      2021-02-26
      回复
  • 拾忆
    拾忆
    2021-02-26

    app.js onshow 每一次启动 setIntervalglobalData.clearInterval = setInterval(()=>{xxxxx})

    app.js onHide 切换后台clearInterval (clearInterva(globalData.clearInterval))



    2021-02-26
    有用
    回复 3
    • 阿糖
      阿糖
      2021-02-26
      必须在onHide时去销毁吗?需求是希望小程序在后台时定时器也还存在
      2021-02-26
      回复
    • 拾忆
      拾忆
      2021-02-26回复阿糖
      清理位置:
      放到全局的global.clearInterval 变量中,任何位置能调用
      getApp()就能清理定时器
      不清理:
      小程序会提示 有定时器为清理 在 Audits面板中
      同时也影响小程序体验
      2021-02-26
      回复
    • 阿糖
      阿糖
      2021-02-26回复拾忆
      好的,谢谢!
      2021-02-26
      回复
登录 后发表内容
问题标签