Привет! Нужно приложение работающее в оффлайн.
Сейчас работает так:
1) в state загружаются данные из AsyncStorage и рендерится в render()
2) посылается асинхронный запрос на сервер и если запрос выполнен успешно, то обновляется state и рендерится в render() и обновляются данные в AsyncStorage
Код примерно такой
constructor() {
this.state = {
invoices: []
}
this.getStorage()
}
async getStorage() {
try {
let invoices = JSON.parse(await AsyncStorage.getItem('invoices'))
this.setState({
invoices: invoices
})
fetch(server_url).then(response => {
return response.json()
}).then(json => {
// AsyncStorage
storage.set('invoices', JSON.stringify(json))
this.setState({
invoices: invoices
})
})
}
}
Как видите никаких проверок наличие сети и сетевых ошибок нет. Вроде никаких проблема не вижу с таким методом, человек будет видеть только то, что возможно достать сейчас и это в данном конкретном случае лучше, чем видеть ошибку, но в мобильной разработке опыта мало,чего то могу не понимать, кто что посоветует лучше?