Skip to content
This repository was archived by the owner on Feb 27, 2024. It is now read-only.

Commit 91d5053

Browse files
committed
Handle errors in app
1 parent e1b0d81 commit 91d5053

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

pages/_app.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import PropTypes from 'prop-types'
22
import '@/styles/index.css'
33
import {ApolloProvider} from '@apollo/client'
44
import {useApollo} from '@/api/wordpress/connector'
5+
import Error from 'next/error'
56

67
export default function App({Component, pageProps}) {
78
/**
@@ -11,9 +12,19 @@ export default function App({Component, pageProps}) {
1112
*/
1213
const apolloClient = useApollo(pageProps)
1314

15+
// Check for errors.
16+
const isError = pageProps?.post?.isError
17+
let errorMessage = pageProps?.post?.message ?? 'An unknown error occurred.'
18+
// Trim trailing period - added via Error component.
19+
errorMessage = errorMessage.replace(/\.$/g, '')
20+
1421
return (
1522
<ApolloProvider client={apolloClient}>
16-
<Component {...pageProps} />
23+
{isError ? (
24+
<Error statusCode={500} title={errorMessage} />
25+
) : (
26+
<Component {...pageProps} />
27+
)}
1728
</ApolloProvider>
1829
)
1930
}

0 commit comments

Comments
 (0)