_handleAppStateChange = (nextAppState) => {
if (this.state.appState.match(/inactive|background/) && nextAppState === 'active') {
console.log('App has come to the foreground!')
this.setState({appState: AppState.currentState});
}
else if (this.state.appState.match(/active|background/) && nextAppState === 'inactive') {
console.log('App has gone to background!')
this.setState({appState: AppState.currentState});
}
}
2条答案
按热度按时间pdtvr36n1#
考虑使用AsyncStorage作为本地存储,并使用AppState将其与您选择的数据库同步(mongoDB是一个很好的远程选择,但不能在本地工作)。它们都是本地模块。
AsyncStorage
的工作方式与localStorage
类似。当应用从foreground
转换到background
时,是本地和远程保存数据的好时机。如下所示。文档非常好。
t2a7ltrp2#
我不知道你会在本地数据库中处理多少数据,但是MongoDB Stitch可以是解决方案之一。
Stitch Mobile Sync。