๊ฒŒ์ดํŒ… ๋ชจ๋“œ์˜ ์„ค์ •์„ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.

๊ทœ์น™ ์„ธ๋ถ€ ์‚ฌํ•ญ

๊ฒŒ์ดํŒ… ๋ชจ๋“œ๋Š” ํŠน์ • ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ตœ์ ํ™” ๋Œ€์ƒ์œผ๋กœ ํ‘œ์‹œํ•˜์—ฌ React ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์ ์ง„์ ์œผ๋กœ ๋„์ž…ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. ์ด ๊ทœ์น™์€ ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์–ด๋–ค ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ฒ˜๋ฆฌํ• ์ง€ ์•Œ ์ˆ˜ ์žˆ๋„๋ก ๊ฒŒ์ดํŒ… ์„ค์ •์ด ์œ ํšจํ•œ์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ž˜๋ชป๋œ ์˜ˆ์‹œ

์ด ๊ทœ์น™์— ๋Œ€ํ•œ ์ž˜๋ชป๋œ ์ฝ”๋“œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

// โŒ ํ•„์ˆ˜ ํ•„๋“œ ๋ˆ„๋ฝ
module.exports = {
plugins: [
['babel-plugin-react-compiler', {
gating: {
importSpecifierName: '__experimental_useCompiler'
// 'source' ํ•„๋“œ ๋ˆ„๋ฝ
}
}]
]
};

// โŒ ์œ ํšจํ•˜์ง€ ์•Š์€ ๊ฒŒ์ดํŒ… ํƒ€์ž…
module.exports = {
plugins: [
['babel-plugin-react-compiler', {
gating: '__experimental_useCompiler' // ๊ฐ์ฒด์—ฌ์•ผ ํ•จ
}]
]
};

์˜ฌ๋ฐ”๋ฅธ ์˜ˆ์‹œ

์ด ๊ทœ์น™์— ๋Œ€ํ•œ ์˜ฌ๋ฐ”๋ฅธ ์ฝ”๋“œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

// โœ… ์™„์ „ํ•œ ๊ฒŒ์ดํŒ… ์„ค์ •
module.exports = {
plugins: [
['babel-plugin-react-compiler', {
gating: {
importSpecifierName: 'isCompilerEnabled', // ๋‚ด๋ณด๋‚ธ ํ•จ์ˆ˜ ์ด๋ฆ„
source: 'featureFlags' // ๋ชจ๋“ˆ ์ด๋ฆ„
}
}]
]
};

// featureFlags.js
export function isCompilerEnabled() {
// ...
}

// โœ… ๊ฒŒ์ดํŒ… ์—†์Œ (๋ชจ๋“  ๊ฒƒ์„ ์ปดํŒŒ์ผ)
module.exports = {
plugins: [
['babel-plugin-react-compiler', {
// gating ํ•„๋“œ ์—†์Œ - ๋ชจ๋“  ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ปดํŒŒ์ผ
}]
]
};