panicThreshold

panicThreshold 옵션은 React 컴파일러가 컴파일 중 오류를 처리하는 방식을 제어합니다.

{
panicThreshold: 'none' // Recommended
}

레퍼런스

panicThreshold

컴파일 오류가 빌드를 실패시켜야 하는지 아니면 최적화를 건너뛰어야 하는지를 결정합니다.

타입

'none' | 'critical_errors' | 'all_errors'

기본값

'none'

옵션

  • 'none' (기본값, 권장): 컴파일할 수 없는 컴포넌트를 건너뛰고 빌드를 계속 진행합니다.
  • 'critical_errors': 치명적인 컴파일러 오류에서만 빌드를 실패시킵니다.
  • 'all_errors': 모든 컴파일러 진단에서 빌드를 실패시킵니다.

주의 사항

  • 프로덕션 빌드에서는 항상 'none'을 사용해야 합니다.
  • 빌드 실패는 애플리케이션이 빌드되지 않도록 합니다.
  • 컴파일러는 'none'을 사용하면 문제가 있는 코드를 자동으로 감지하고 건너뜁니다.
  • 더 높은 임계값은 개발 중 디버깅에만 유용합니다.

사용법

프로덕션 설정 (권장)

프로덕션 빌드에서는 항상 'none'을 사용하세요. 이것이 기본값입니다.

{
panicThreshold: 'none'
}

이렇게 하면 다음을 보장합니다.

  • 컴파일러 문제로 인해 빌드가 실패하지 않습니다.
  • 최적화할 수 없는 컴포넌트도 정상적으로 실행됩니다.
  • 최대한 많은 컴포넌트가 최적화됩니다.
  • 안정적인 프로덕션 배포가 가능합니다.

개발 중 디버깅

문제를 찾기 위해 일시적으로 더 엄격한 임계값을 사용합니다.

const isDevelopment = process.env.NODE_ENV === 'development';

{
panicThreshold: isDevelopment ? 'critical_errors' : 'none',
logger: {
logEvent(filename, event) {
if (isDevelopment && event.kind === 'CompileError') {
// ...
}
}
}
}