target
target ์ต์
์ ์ปดํ์ผ๋ฌ๊ฐ ์ด๋ค React ๋ฒ์ ์ ์ํ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋์ง ์ง์ ํฉ๋๋ค.
{
target: '19' // or '18', '17'
}๋ ํผ๋ฐ์ค
target
์ปดํ์ผ๋ ์ถ๋ ฅ์ React ๋ฒ์ ํธํ์ฑ์ ์ค์ ํฉ๋๋ค.
ํ์
'17' | '18' | '19'๊ธฐ๋ณธ๊ฐ
'19'
์ ํจํ ๊ฐ
'19': React 19๋ฅผ ๋์์ผ๋ก ํฉ๋๋ค (๊ธฐ๋ณธ๊ฐ). ์ถ๊ฐ ๋ฐํ์์ด ํ์ํ์ง ์์ต๋๋ค.'18': React 18์ ๋์์ผ๋ก ํฉ๋๋ค.react-compiler-runtimeํจํค์ง๊ฐ ํ์ํฉ๋๋ค.'17': React 17์ ๋์์ผ๋ก ํฉ๋๋ค.react-compiler-runtimeํจํค์ง๊ฐ ํ์ํฉ๋๋ค.
์ฃผ์ ์ฌํญ
- ์ซ์๊ฐ ์๋ ๋ฌธ์์ด ๊ฐ์ ์ฌ์ฉํ์ธ์. (์:
17์ด ์๋'17') - ํจ์น ๋ฒ์ ์ ํฌํจํ์ง ๋ง์ธ์. (์:
'18.2.0'์ด ์๋'18'์ ์ฌ์ฉ) - React 19๋ ์ปดํ์ผ๋ฌ ๋ฐํ์ API๊ฐ ๋ด์ฅ๋์ด ์์ต๋๋ค.
- React 17๊ณผ 18์
react-compiler-runtime@latest์ค์น๊ฐ ํ์ํฉ๋๋ค.
์ฌ์ฉ๋ฒ
React 19 ๋์์ผ๋ก ํ๊ธฐ (๊ธฐ๋ณธ๊ฐ)
React 19์ ๊ฒฝ์ฐ ํน๋ณํ ์ค์ ์ด ํ์ํ์ง ์์ต๋๋ค.
{
// defaults to target: '19'
}์ปดํ์ผ๋ฌ๋ React 19์ ๋ด์ฅ ๋ฐํ์ API๋ฅผ ์ฌ์ฉํฉ๋๋ค.
// ์ปดํ์ผ๋ ์ถ๋ ฅ์ React 19์ ๋ค์ดํฐ๋ธ API๋ฅผ ์ฌ์ฉํฉ๋๋ค.
import { c as _c } from 'react/compiler-runtime';React 17 ๋๋ 18 ๋์์ผ๋ก ํ๊ธฐ
React 17๊ณผ React 18 ํ๋ก์ ํธ์ ๊ฒฝ์ฐ ๋ ๋จ๊ณ๊ฐ ํ์ํฉ๋๋ค.
- ๋ฐํ์ ํจํค์ง๋ฅผ ์ค์นํฉ๋๋ค.
npm install react-compiler-runtime@latesttarget์ ์ค์ ํฉ๋๋ค.
// For React 18
{
target: '18'
}
// For React 17
{
target: '17'
}์ปดํ์ผ๋ฌ๋ ๋ ๋ฒ์ ๋ชจ๋์ ๋ํด ํด๋ฆฌํ ๋ฐํ์์ ์ฌ์ฉํฉ๋๋ค.
// ์ปดํ์ผ๋ ์ถ๋ ฅ์ ํด๋ฆฌํ์ ์ฌ์ฉํฉ๋๋ค.
import { c as _c } from 'react-compiler-runtime';๋ฌธ์ ํด๊ฒฐ
์ปดํ์ผ๋ฌ ๋ฐํ์ ๋๋ฝ์ ๊ดํ ๋ฐํ์ ์ค๋ฅ
โCannot find module โreact/compiler-runtimeโโ์ ๊ฐ์ ์ค๋ฅ๊ฐ ํ์๋๋ ๊ฒฝ์ฐ์๋ ๋ค์๊ณผ ๊ฐ์ด ํฉ๋๋ค.
-
React ๋ฒ์ ์ ํ์ธํฉ๋๋ค.
npm why react -
React 17 ๋๋ 18์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋ฐํ์์ ์ค์นํฉ๋๋ค.
npm install react-compiler-runtime@latest -
target์ด React ๋ฒ์ ๊ณผ ์ผ์นํ๋์ง ํ์ธํฉ๋๋ค.{target: '18' // React ๋ฉ์ด์ ๋ฒ์ ๊ณผ ์ผ์นํด์ผ ํฉ๋๋ค}
๋ฐํ์ ํจํค์ง๊ฐ ์๋ํ์ง ์๋ ๊ฒฝ์ฐ
๋ฐํ์ ํจํค์ง๊ฐ ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋์ง ํ์ธํ์ธ์.
- ํ๋ก์ ํธ์ ์ค์น๋์ด ์์ด์ผ ํฉ๋๋ค. (์ ์ญ์ด ์๋)
package.json์dependencies์ ๋์ด๋์ด ์์ด์ผ ํฉ๋๋ค.- ์ฌ๋ฐ๋ฅธ ๋ฒ์ ์ด์ด์ผ ํฉ๋๋ค. (
@latestํ๊ทธ) devDependencies์ ์์ผ๋ฉด ์ ๋ฉ๋๋ค. (๋ฐํ์์ ํ์ํฉ๋๋ค)
์ปดํ์ผ๋ ์ถ๋ ฅ ํ์ธํ๊ธฐ
์ฌ๋ฐ๋ฅธ ๋ฐํ์์ด ์ฌ์ฉ๋๊ณ ์๋์ง ํ์ธํ๋ ค๋ฉด ์๋ก ๋ค๋ฅธ import๋ฅผ ์ฃผ๋ชฉํ์ธ์. (๋ด์ฅ์ ๊ฒฝ์ฐ react/compiler-runtime, 17/18์ฉ ๋
๋ฆฝ ํจํค์ง์ ๊ฒฝ์ฐ react-compiler-runtime)
// React 19์ฉ (๋ด์ฅ ๋ฐํ์)
import { c } from 'react/compiler-runtime'
// ^
// React 17/18์ฉ (ํด๋ฆฌํ ๋ฐํ์)
import { c } from 'react-compiler-runtime'
// ^