import React from 'react';
return React.createElement('div', {},
React.createElement('h2', {}, "Let's get JSX!"),
React.createElement(Expenses, {item: expenses}, "Let's get JSX2!") //Expenses는 컴포넌트
)
return (
<div>
<h2>Let's get JSX!</h2>
<Expenses items={expenses}/>
</div>
)
위의 1과 2는 완전한 동치이다.
두 코드의 차이점은 2번은 React를 직접 가져오지 않아도 되는데 내부적으로는 1번과 같이 동작하고 있다.
위의 return React.createElement
구문을 보면 반환은 오직 하나의 div 태그이고 내부적으로 계속해서 하위 태그들을 만들어내는 것을 볼 수 있다. 이러한 이유로 return
은 오직 한 개만 반환하기에 div로 감싸주는 것 이다.
그리고 1번과 같이 사용하기 위해서는 React를 명시적으로 import해서 사용해야만한다.