当应用程序在后台运行时,React Native setInterval会暂停

时间:2018-08-24 05:15:41

标签: javascript reactjs react-native

我正在开发React本机应用程序。对于其中一项任务,我需要使用javascript setInterval函数,但是当应用程序在后台运行时,它将停止。谁能引导我,为什么它停止了?有什么解决办法吗?

我的代码:

 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);

1 个答案:

答案 0 :(得分:0)

这是预期的行为-当应用程序暂停时,所有setInterval的运行和(以及setTimeout待处理)也会如此。您想研究后台任务,以在使应用程序最小化的同时保持某些运行状态:

这应该可以帮助您实现:

How can I run background tasks in React Native?