import * as React from 'react' ; export class ErrorBoundary extends React . Component < { } , { hasError : boolean ; } > { constructor ( props ) { super ( props ) ; this . state = { hasError : false } ; } static getDerivedStateFromError ( error ) { return { hasError : true } ; } componentDidCatch ( error , errorInfo ) { console . error ( error , errorInfo ) ; } render ( ) { if ( this . state . hasError ) { return < h1 > Something went wrong . < /h1>; } return this . props . children ; } }