如何处理异常并在网络请求因React Native超时而失败时显示警报?

时间:2016-08-28 15:04:36

标签: javascript react-native

我希望我的应用在API请求失败时向用户显示Alert,例如当后端服务器出现故障时。警报会通知用户请求失败,并允许用户重试请求或通过navigator.resetTo('dashboard')返回主仪表板屏幕。

有没有办法全局捕获网络失败的异常,这样我就不必在每个单独的try / catch块中包含对API的每次调用?

E.g。

await backend.getUser(); //throws TimeoutException

//TimeoutException should be globally caught and show the Alert to user

/* somewhere else in the app */

await backend.uploadImage(image); //throws TimeoutException

我可以看到如何使用answer from this question全局捕获错误:

ErrorUtils.setGlobalHandler(function() {
// your handler here
});

但是,我如何才能将navigator传递给错误处理程序,以便我可以更改场景以将用户重定向回仪表板?

0 个答案:

没有答案