Skip to content

Instantly share code, notes, and snippets.

@svschannak
Created March 20, 2018 07:25
Show Gist options
  • Save svschannak/1e3e8ca617c21b25956b88210d8eb57b to your computer and use it in GitHub Desktop.
Save svschannak/1e3e8ca617c21b25956b88210d8eb57b to your computer and use it in GitHub Desktop.
Error Boundaries in React
import React from 'react';
import MyGreatComponent from './my-component';
class ErrorBoundary extends React.Component {
constructor(props) {
super(props);
this.state = { hasError: false };
}
componentDidCatch(error, info) {
// Display fallback UI
this.setState({ hasError: true });
// You can also log the error to an error reporting service
logErrorToMyService(error, info);
}
render() {
if (this.state.hasError) {
// You can render any custom fallback UI
return <h1>Something went wrong.</h1>;
}
return this.props.children;
}
}
const App = () => {
return (
<ErrorBoundary>
<MyGreatComponent />
</ErrorBoundary>
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment