inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전 리액트 프로그래밍

리액트 요소와 가상돔1

컴포넌트

140

김동현

작성한 질문수 16

0

강의 3분쯤에 설명하신 부분 중에 

const element = <Title title="안녕하세요" color="blue" />; 부분이 바벨로 컴파일되어 React.createElement 함수를 호출하여 consoleLogResult 객체가 반환되고, 이 객체의 type에 입력된 Title 함수 컴포넌트를 실행하여 최종적으로  Title 컴포넌트가 리액트 요소(<p type={{ color }}>{title></p)를 반환하는 것이 맞나요??

아니면 <Title ,,, />가 React.createElement를 실행하지 않고 바로 Title 컴포넌트를 실행하게 되나요??

redux react

답변 1

0

이재승

안녕하세요
JSX 문법으로 작성하면 바벨 컴파일 후 React.createElement 를 호출하는 코드가 됩니다
JSX 문법은 프로그래머를 위한 편의 기능이라고 생각하시면 됩니다
React.createElement 실행 결과는 (객체 형태인) 리액트 요소입니다
JSX 문법을 사용하든 사용하지 않든 우리는 리액트 요소를 리액트에게 전달합니다
리액트는 리액트 요소만 있으면 렌더링에 필요한 모든 정보를 얻을 수 있습니다

우리는 최초에 최상위(root) 리액트 요소를 리액트에게 전달합니다
그 요소 밑에는 우리가 작성한 컴포넌트에 대한 모든 정보가 있죠
그래서 이후 리액트가 (상태값 변경과 같이)필요한 순간에 렌더링을 수행합니다

자동완성기능이 안되네요 ..

0

532

3

화면에 에러가나네요 ...

0

538

2

setValue 함수 질문 있습니다.

0

855

1

찾아야한다 실습 문의

0

484

1

훅 기초 익히기 - 배치 처리와 순차적 처리의 차이

0

492

1

cra, next.js 관련 질문 드립니다!

0

613

1

useState 배열 비구조화 문법 질문!

0

260

1

Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'

1

1091

2

Saga 오류 이거 혹시 왜이런지 알수 있을까요?

0

379

2

http://localhost:3001/user/search?keyword=u 이걸로 데이터를 보는데 저는 사이트에 연결할 수 없다고 나오네요

0

680

1

match

1

499

1

버튼이 생성되지 않습니다 .

0

288

1

혹시 import 옆에 파일 사이즈 표시 어떻게 하나요?

0

263

1

saga 문제

0

250

1

에러가 발생하는데 이유가뭘까요..?

0

396

2

선생님과 똑같이 했는데 다 rendering 됩니다.

0

209

1

컴포넌트와 컨테이너의 기준

0

322

1

커스텀훅의 개념과 함수차이

1

1204

1

useEffect 실전 활용법(1) 강의에서 질문있습니다.

0

344

1

리덕스, 사가파일들의 관리

0

212

1

useImperativeHandle 질문 입니다.

0

286

1

컴파일 문의드립니다.

0

211

1

React.memo 관련 질문이 있습니다.

0

380

1

Context API vs Redux 사용 빈도

0

218

1