React Native:当应用程序处于后台时,setTimeout不起作用



在React Native中,当setTimeout用于调度回调的执行,然后应用程序处于后台时,回调永远不会执行。

为什么?

我确实找到了几个提到这种行为的次要来源,但没有全面的文档。

使用react native:-提供的AppState事件侦听器

useEffect(() => {
const subscription = AppState.addEventListener("change", nextAppState => 
{
if (
appState.current.match(/inactive|background/) 
) {
setTimeout(()=>{
// your callback function
},1000)
}

});
return () => {
subscription.remove();
};
}, []);

这是文档链接-https://reactnative.dev/docs/appstate

最新更新