From a6537e12e6960d03deb751e0cd9c109cdaa569c2 Mon Sep 17 00:00:00 2001 From: "MD. Ariful Alam" Date: Thu, 26 Aug 2021 13:59:23 +0600 Subject: [PATCH] Handle exception --- src/App.js | 54 ++++++++++++++++--------------------- src/components/ErrorPage.js | 14 +++++----- 2 files changed, 30 insertions(+), 38 deletions(-) diff --git a/src/App.js b/src/App.js index 5361111..1c2fb6b 100644 --- a/src/App.js +++ b/src/App.js @@ -67,39 +67,11 @@ function App() { dispatch(setRepo(data.items)); }) .catch((error) => { - console.error('Error:', error); - - try { - setRateLimit({ - remaining: error.response.headers['x-ratelimit-remaining'], - reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(), - }); - - - } catch (error2) { - console.error('Error:', error2); - } + handleError(error); }); }) .catch((error) => { - console.error('Error:', error); - - try { - setRateLimit({ - remaining: error.response.headers['x-ratelimit-remaining'], - reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(), - }); - - if (error.response.status === 403) { - setError(403); - } else if (error.response.status === 404) { - setError(404); - } else { - setError(500); - } - } catch (error2) { - setError(500); - } + handleError(error); }) .finally(() => { dispatch(setLoading(false)); @@ -110,6 +82,26 @@ function App() { loadData(); }, [loadData]) + const handleError = (error) => { + console.error('Error:', error); + try { + setRateLimit({ + remaining: error.response.headers['x-ratelimit-remaining'], + reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(), + }); + + if (error.response.status === 403) { + setError(403); + } else if (error.response.status === 404) { + setError(404); + } else { + setError(500); + } + } catch (error2) { + setError(500); + } + } + return ( @@ -120,7 +112,7 @@ function App() { { return ( -
-
-
-
-

{props.status}

+
+
+
+
+

{props.status}

{props.title}

{props.subTitle}

-
-
+
+
) }