React로 제작된 페이지에서 HTML파일의 소스를 확인해보면 root id값을 가진 빈 div태그가 있을 것이다.
하지만 브라우저에서는 수 많은 UI가 동작하고 있음을 알 수 있을 것이다.
이는 React가 CSR(Client Side Rendering)이기 때문인데
HTML, JS, React 코드가 함께 브라우저로 전송 되고
Client Side에서 전송된 코드가 브라우저에서 동작하며 필요한 DOM요소들을 동적으로 생성해주기 때문이다.
JSX(javascript xml)은 html과 유사하다.
<div></div>
<></>
<Fragment></Fragment>
<div>{name}</div>
<ul>{list.map(elm => <li>{elm}</li>)}</ul>
<React.StrictMode></React.StrictMode>
는 배포할 때 자동으로 제거된다. JS의 strict mode와 비슷한 개념이라고 생각하면 된다. // 보다 엄격한 개발 환경