특정 컴포넌트 오류로 인하여 페이지 전체에 영향을 미치지 않기 에러 바운더리를 만들었습니다.

  1. 구현 부분

    /* eslint-disable class-methods-use-this */
    import React from "react";
    
    class ErrorBoundary extends React.Component {
    	constructor(props) {
    		super(props);
    		this.state = {hasError: false};
    	}
    	static getDerivedStateFromError(error) {
    		return {hasError: true};
    	}
    	componentDidCatch(error, errorInfo) {}
    	render() {
    		if (this.state.hasError) {
    			return this.props.FallbackComponent;
    		}
    		return this.props.children;
    	}
    }
    
    export default ErrorBoundary;
    
  2. 호출 부분

    <ErrorBoundary FallbackComponent={<></>}>
    	<Component></Component>
    </ErrorBoundary>