javascript - 当应用程序处于后台时,React Native setInterval 会暂停
问题描述
我正在开发一个反应原生应用程序。对于其中一项任务,我需要使用 javascriptsetInterval
函数,但是当应用程序在后台时它会停止。谁能指导我,为什么它停止了?有什么解决办法吗?
我的代码:
let startTimer = setInterval(() => {
minutes = parseInt(timer / 60, 10)
seconds = parseInt(timer % 60, 10);
minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
this.setState({ remainMin: minutes, remainSec: seconds });
if (--timer < 0) {
this.handelTimerStop();
timer = duration;
this.setState({ isResend: true });
}
}, 1000);
解决方案
这是预期的行为 - 当应用程序暂停时,所有setInterval
's running 和(和setTimeout
s 挂起)也是如此。您想查看后台任务,以在应用程序最小化时保持运行:
这应该可以帮助您实现:
推荐阅读
- amazon-s3 - Terraform 问题的 AWS S3 到 BigQuery 数据传输
- visual-studio-code - 尝试在 VS 代码上安装下一个 js,但通过说 npm 无法识别来显示错误
- jquery - 在 WooCommerce 中将 jQuery 添加到单个产品页面的问题
- r - 如何解释零膨胀负二项式模型的输出?
- c# - Acumatica 从项目级别的任务更新收入预算字段
- javascript - 如何过早地完成 JS 转换中的管道
- flutter - 点按以编辑列表拼贴的文本
- reactjs - 在reactjs中将嵌套的json数据解析为json
- python - 有没有要删除元数据 insdie excel 属性?
- c# - .NET 5.0 使用 JSON 数组的选项模式