https://so-so.dev/react/import-react-from-react/
React 17은 2020/10/20에 release 되었다.
React 17 부터는 import React from "react"
를 안해도된다.
즉 아래 코드가 동작한다.
// 빌드된 js
// React를 참조하지만 React import는 없음
function y(V) {
// ...
return React.createElement($, ...)
}
이러한 특징에서 우리는 다음과 같은 사실을 알 수 있다.
React.createElement
로 변환되니, 파일마다 import * as React from "react"
코드를 추가하라고 안내한다.그러니까 이 특징은 babel
기능이다.
React는 babel과 함께 새로운 JSX 형태를 개발했고, 그중 하나가 React를 import하지 않아도 된다는 것이다.
import React from 'react';
function App() {
return <h1>Hello World</h1>;
}
import React from 'react';
function App() {
return React.createElement('h1', null, 'Hello world');
}
기존의 위 JSX → React.createElement 방식은 2가지 문제가 있다.
import React from 'react'
구문이 반드시 있어야 한다.