📚 Reference
📜 Chapter
문제 상황
문제 원인
useEffect(() => {}, [])
useEffect
의 2번째 인자에 빈 배열을 넣어주게 되면 component가 처음 렌더링 될 때만 실행된다.해결 방법
src/index.js
에서 <React.StrictMode>
태그로 <app/>
이 감싸져 있으면 개발 모드에서 (개발 단계 시, 오류를 잘 잡기 위해) 두 번씩 랜더링 된다.src/index.js
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode> // <- 이거요!
<App />
</React.StrictMode> // <- 이겁니다!
);
StrictMode
StrictMode
는 React에서 제공하는 검사 도구라고 생각하면 될 것 같다.create-react-app
으로 리액트 앱을 생성하면 기본적으로 생성되는 태그라고 한다.