StackAsk is a community where developers ask questions, share answers and learn from each others real-world experience, so every solved problem helps the next person who runs into it.
class DataRepository { async function getDataById(id) { const connect = await checkConnection(); if (connect) { return await serverRepository.getDataByIdFromServer(id); } return localRepository.getDataByIdFromCache(data); } async function saveData(data) { const connect = await checkConnection(); if (connect) { return await serverRepository.saveDataToServer(data); } return localRepository.saveDataToCache(data); } async function checkConnection() { // call ping API if difference code 200 return false } function syncDataToServer() { const dataList = getDataListFromCache(size); if (dataList.length) { const connect = await checkConnection(); if (connect) { syncDataToServer(dataList); } } } startInterval(syncDataToServer, time); }
failed
error
fetch
2.2K Point(s)
1.2K Point(s)
313 Point(s)
178 Point(s)
138 Point(s)
Input your email to receive reset password link, or if you remember your password, you can click