개발 모드에서 create-react-app를 실행할 때 오류 오버레이를 비활성화하는 방법이 있습니까? 개발 모드에서 오류 오버레이 사용 안 함
이
내가 이야기하고있는 오버레이입니다 :내 응용 프로그램에서 메신저 사용하여 오류 경계 (React 16 Error Boundaries)이 때 구성 요소 충돌 오류 메시지를 표시하기 때문에이 부탁 해요,하지만 오류 오버레이가 튀어 나와 내 메시지를 덮습니다.
개발 모드에서 create-react-app를 실행할 때 오류 오버레이를 비활성화하는 방법이 있습니까? 개발 모드에서 오류 오버레이 사용 안 함
이
내가 이야기하고있는 오버레이입니다 :내 응용 프로그램에서 메신저 사용하여 오류 경계 (React 16 Error Boundaries)이 때 구성 요소 충돌 오류 메시지를 표시하기 때문에이 부탁 해요,하지만 오류 오버레이가 튀어 나와 내 메시지를 덮습니다.
우리는 개발에 오류 오버레이를 해제 할 수있는 옵션을 제공하지 않습니다. 오류 경계가 적용되지 않습니다 (프로덕션 용도로 사용됨).
개발 오류 오버레이와 오류 경계를 모두 가지고 있어도 아무런 해가 없습니다. 오류 경계를 보려면 간단히 [escape]
을 누르십시오.
우리는 오류 오버레이가 일반적인 오류 경계 (소스 코드, 열려면 클릭 등)에 대한 엄청난 가치를 제공한다고 생각합니다. 모든 사용자에 대해 기본 구성 요소로 핫 구성 요소 다시로드를 활성화하는 것도 중요합니다.
오버레이를 사용하지 않도록 설정하려면 react-scripts
에서 꺼내고 webpackHotDevClient
의 사용을 중지해야합니다. 덜 관입적 인 방법은 window
의 오버레이로 설치된 error
이벤트 수신기를 제거하는 것일 수 있습니다.
나는 동일한 문제가 있었고 오랜 시간 동안 create-react-app 소스를 파고있었습니다. 내가 그것을 해제하는 방법을 찾을 수 없지만, 그 자리에 넣어 청취자를 제거 할 수 있습니다, effectivly 오류 메시지를 중지합니다. developerconsole을 열고 html 태그를 선택하십시오. 여기서 unhandledError.js에 의해 놓인 오류 및 unhandlerejection 이벤트 리스너를 제거 할 수 있습니다. 화면 오른쪽 상단의 x를 클릭하여 오류 메시지를 닫으면 메시지가 표시됩니다. config/webpack.config.dev.js
에서
는 entry
배열
require.resolve('react-dev-utils/webpackHotDevClient'),
에 다음 줄을 주석 그리고이 두 가지의 주석 :
require.resolve('webpack-dev-server/client') + '?/',
require.resolve('webpack/hot/dev-server'),
정말 좋은 팁! 이제 오류 범위를 테스트하기 위해 환경 변수를 조작 할 필요가 없습니다. – arvinsim