React.StrictMode란?
애플리케이션 내의 잠재적인 문제를 알아내기 위해 리액트에서 제공하는 검사 도구
- StrictMode는 구성 요소 함수를 두 번 호출하여 문제가 되는 구성 요소를 찾음
- StrictMode는 개발 모드에서만 활성화되기 때문에, 프로덕션 빌드에는 영향을 끼치지 않음
- 개발 과정에서 이중 호출(Double Invoke)되는 문제가 발생할 수도 있으나, 이는 StrictMode로 인한 것으로, 배포 환경에서는 문제되지 않음
어떤 검사를 할까?
이중 호출(Double-Invoke)되는 함수
- 클래스 컴포넌트의
constructor
, render
그리고 shouldComponentUpdate
- 클래스 컴포넌트의
getDrivedStateFromProps
static 메서드
- 함수 컴포넌트 바디
- State updater 함수(
setState
의 첫 번째 인자)
useState
, useMemo
, useReducer
에 전달되는 함수