KimMinJun
Coding Note
KimMinJun
전체 방문자
오늘
어제
  • 분류 전체보기 (487)
    • ALGORITHM (11)
      • 정렬 (6)
      • 최단경로 (1)
      • 자료구조 (1)
      • 슬라이딩 윈도우 (1)
      • etc (2)
    • Git (5)
    • Web (24)
      • Vanilla JS (13)
      • TS (2)
      • React (7)
      • ETC (1)
    • React 공식문서 (번역, 공부) (11)
      • Quick Start (2)
      • Installation (0)
      • Describing the UI (9)
      • Adding Interactivity (0)
      • Managing State (0)
      • Escape Hatches (0)
    • Next.js 공식문서 (번역, 공부) (3)
      • Getting Started (2)
      • Building Your Application (1)
    • PS (432)
      • 백준 (187)
      • Programmers (105)
      • CodeUp (21)
      • STL (3)
      • 제코베 JS 100제 (50)
      • SWEA (0)
      • LeetCode (65)
    • IT (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 관리

공지사항

인기 글

태그

  • recursion
  • 정렬
  • 수학
  • 제코베 JS 100제
  • 백준
  • js
  • codeup
  • string
  • Level 2
  • C
  • Level 1
  • 그래프
  • Level 0
  • tree
  • programmers
  • LeetCode
  • 다이나믹 프로그래밍
  • C++
  • 문자열
  • Level1

최근 댓글

최근 글

hELLO · Designed By 정상우.
KimMinJun

Coding Note

Web/React

React & React-Dom

2022. 11. 11. 01:28

개요

아래와 같이 기본 index.js를 보면 'react'와 'react-dom/client'를 import 하는것을 볼 수 있다.

두개의 차이점은 무엇이고 굳이 'react'에서 'react-dom'을 분리한 이유는 무엇일까?

import React from 'react';
import ReactDOM from 'react-dom/client';

import './index.css';
import App from './App';

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);

 

React

2022.10.11 - [React] - Why React?

 

Why React?

What is React? React는 지금은 Meta가 된 Facebook이 만든 자바스크립트의 UI 라이브러리이다. 우리는 보통 Angular, React, Vue를 제일 많이 사용하는 자바스크립트 프레임워크라고 알고 있다. 하지만 React 공

jun-coding.tistory.com

 

위 게시글을 보면 React에 대해 이렇게 정의하는 것을 볼 수 있다.

지금은 Meta가 된 Facebook이 만든 자바스크립트의 UI 라이브러리이다.

 

다시 말하면 React는 단순히 그냥 UI 라이브러리일 뿐이며, 웹에서만 쓰인다는 것은 아니다.

 

 

 

React-Dom

React document 에서 React-Dom에 대한 설명은 아래와 같이 나와있다.

The react-dom package provides DOM-specific methods that can be used at the top level of your app and as an escape hatch to get outside the React model if you need to.

react-dom 패키지는 DOM 관련 특정 메소드를 제공하고, 최상위 level에서 사용될 수 있으며, 필요시 React model 밖으로 나갈 수 있게 해준다고 적혀있다.

 

솔직히 잘 이해가 가는 문구는 아니다...

 

내가 이해한대로 다시 정리해보자면, react-dom은 실제 브라우저의 DOM을 조작하여 렌더링 할 수 있게 해주는 것이다.

물론 실제 DOM이 렌더링 되려면 Virtual DOM의 최종 결과를 가지고 바뀐 부분만 실제 DOM에서 렌더링 하는 중간과정이 있지만, 브라우저의 DOM에 접근하여 우리가 보는 화면을 렌더링 할 수 있게 해준다고 생각하면 될 것 같다.

 

 

React와 React-Dom이 나뉜이유?

위에서 말했듯이 React는 단순히 UI 라이브러리일 뿐이다.

따라서 웹에 국한되지 않으며, 필요하다면 다른 곳에서도 쓰일 수가 있다.

 

하지만 React-DOM은 웹에서 React를 사용하여 화면을 렌더링 할 수 있게 해주는 것이다.

 

React는 도구이고, React-DOM은 특정 사용처에 대한 도구 사용방법이라고 생각하면 편할 것 같다.

저작자표시 (새창열림)

'Web > React' 카테고리의 다른 글

Bundler  (0) 2023.08.16
React Hooks  (0) 2023.03.05
Why React?  (0) 2022.10.11
JSX  (0) 2022.05.02
    'Web/React' 카테고리의 다른 글
    • Bundler
    • React Hooks
    • Why React?
    • JSX
    KimMinJun
    KimMinJun

    티스토리툴바