React를 사용하기 위해서 react
와 react-dom
라이브러리가 필요하다.
<script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script>
react
, react-dom
라이브러리가 왜 필요한지 알아보고, 어떻게 작동하는지 살펴보고자 한다.
react
: UI를 구축하기 위해 설계된 자바스크립트 라이브러리
react-dom
: UI를 브라우저 DOM에 렌더링 할 때 사용하는 라이브러리
react-dom
에 전달react
에게 받은 변경된 스냅샷과 실제 브라우저 DOM을 비교하며 실질적으로 브라우저 DOM 조작react
component의 이전 state와 현재 state를 비교하여 차이가 있을 때에 DOM 업데이트React가 렌더링할 수 있는 더 많은 환경을 더 쉽게 구축하기 위해서
react
와react-dom
을 분할하였다.
react
자체는 브라우저나 웹과 아무 관련이 없으나, react-dom
을 이용하여 React의 아이디어를 웹 브라우저에 바인딩 할 수 있다.
이러한 방식으로 react-native
, react-three
와 같은 프레임워크를 이용하여 다른 곳에서도 React의 아이디어를 사용할 수 있다.
References:
https://medium.com/programming-sage/react-vs-react-dom-a0ed3aea9745
https://velog.io/@yeum0523/React-vs-React-DOM