小程序
小游戏
企业微信
微信支付
扫描小程序码分享
屏幕锁屏 定时器就停了,这时程序还没死 怎么就停了呢
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
定时器没有暂停吧,只是页面渲染暂停而已。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
测试是暂停的(我猜测) 因为我定义了一个变量累加 当我锁屏时 这个变量就不累加了 你说的停止渲染 那是wxss 里 我在js 里的变量不涉及渲染吧 我又没有调用setData 你试试 这个定时器本来就没有暂停方法 只有开始和结束 难道是定时器销毁了 因为我再次唤起页面的时候 他会走onHide 和onShow 方法 我在onShow 方法里又开启了定时器
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
console.log('--监听页面显示');
// 定时调用
timer = setInterval(function () {
userReciteTime += 1;
console.log("//循环间隔 单位ms============" + userReciteTime)
}, 1000) //循环间隔 单位ms
},
* 生命周期函数--监听页面隐藏
onHide: function () {
console.log('--监听页面隐藏');
clearInterval(timer);
定时器是停了。
我个人认为是定时器销毁 了 假设没有销毁 当我再次调用这个方法开启时
timer = setInterval( function () {
userReciteTime += 1 ;
console.log( "//循环间隔 单位ms============" + userReciteTime)
}, 1000 ) //循环间隔 单位ms
他会重新创建一个
当我clearInterval(timer); 他只会销毁一个 还存有一个定时器 相当于我创建了2 个定时器 只销毁了一个 这种假设是针对锁屏情况
锁屏不执行onhide方法,屏幕唤醒的时候才会执行onhide方法。
是的 但是他走了onHIde 又会接着走onShow
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
定时器没有暂停吧,只是页面渲染暂停而已。
测试是暂停的(我猜测) 因为我定义了一个变量累加 当我锁屏时 这个变量就不累加了 你说的停止渲染 那是wxss 里 我在js 里的变量不涉及渲染吧 我又没有调用setData 你试试 这个定时器本来就没有暂停方法 只有开始和结束 难道是定时器销毁了 因为我再次唤起页面的时候 他会走onHide 和onShow 方法 我在onShow 方法里又开启了定时器
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
console.log('--监听页面显示');
// 定时调用
timer = setInterval(function () {
userReciteTime += 1;
console.log("//循环间隔 单位ms============" + userReciteTime)
}, 1000) //循环间隔 单位ms
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
console.log('--监听页面隐藏');
clearInterval(timer);
},
定时器是停了。
我个人认为是定时器销毁 了 假设没有销毁 当我再次调用这个方法开启时
// 定时调用
timer = setInterval( function () {
userReciteTime += 1 ;
console.log( "//循环间隔 单位ms============" + userReciteTime)
}, 1000 ) //循环间隔 单位ms
他会重新创建一个
当我clearInterval(timer); 他只会销毁一个 还存有一个定时器 相当于我创建了2 个定时器 只销毁了一个 这种假设是针对锁屏情况
锁屏不执行onhide方法,屏幕唤醒的时候才会执行onhide方法。
是的 但是他走了onHIde 又会接着走onShow