일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Babel
- background setInterval
- background tab
- react-helmet
- codingtest
- context
- React 공식문서
- hook
- React 고급 안내서
- CSS
- Next13
- Render Props
- Programmers
- React API 참고서
- Nextjs React 18
- React18
- getUTCDate
- react hook
- notFound()
- Javascript
- 고급안내서
- Nextjs
- React 고급안내서
- react
- background: url
- background setttimeout
- React 18 Nextjs
- React 18
- next13 head
- RTK Query
Archives
- Today
- Total
akjfal
@babel/plugin-transform-runtime 공식 문서 본문
바벨에 추가된 코드를 재사용해서 코드 크기를 줄일 수 있는 플러그인이다.
Installation
개발용을 설치해주자.
npm install --save-dev @babel/plugin-transform-runtime
pr용이 필요하다면 이것도 설치해주자.
npm install --save @babel/runtime
Why?
Babel에서 사용되는 중복코드들이 @babel/plugin-transform-runtime 플러그인이 @babel/runtime 모듈을 참조해서 중복되지 않도록 처리해준다.
Usage
With a configuration file(추천) - 옵션은 기본 값이다.
{
"plugins": [
[
"@babel/plugin-transform-runtime",
{
"absoluteRuntime": false,
"corejs": false,
"helpers": true,
"regenerator": true,
"version": "7.0.0-beta.0"
}
]
]
}
CLI
babel --plugins @babel/plugin-transform-runtime script.js
Node API
require("@babel/core").transformSync("code", {
plugins: ["@babel/plugin-transform-runtime"],
});
Options
"plugins": [["@babel/plugin-transform-runtime",
{
// "polyfill": v7에서는 기본적으로 추가되도록 됨
// "useBuiltIns": v7에서는 기본적으로 추가되도록 됨
"corejs": false,
// 각자 필요한 버전을 지정하면 된다.
// 2 : 글로벌 변수(Promise)와 정적 속성(ex. Array.from)을 지원
// 3 : instance properites를 지원 - proposals : true옵션을 사용하여 polyfill 제안사항들을 polyfill할 수 있다.
"helpers": true,
// inlined Babel helper들이 moduleName과 함께 호출 할지 안 할지 결정한다.(ex. classCallCheck, extends)
// babel이 사용하는 helper코드들이 불필요한 중복까지 추가될 수 있다. 이러한 것들을 대체할 지 여부에 대한 토글이다.
"regenerator": true,
// 현재 환경을 중복되어 오염시키는 코드들을 제거하기 위해서 사용된다.
"useEsModules": false,
// 7.13.0부터 제거된다.
// commonJs 문법을 유지할 필요 없기 때문에 @babel/plugin-transform-modules-commonjs에서 실행되지 않는 helper들을 사용한다.
// exports.default = function 이것이 export default function 이렇게 사용 가능해진다.
"absoluteRuntime": false,
// 변환 실행시간을 크게 가질 수 있다.
// 런타임에 대한 절대 경로를 미리 설정 한 후 출력코드를 삽입할 수 있다.
// 파일이 컴파일된 다음 즉시 사용되는 상황에서 사용 할 수 있다.
"version": "7.0.0-beta.0"
// 더 높은 버전을 사용하고 싶다면, 설정하면 된다.
}
]]
'Babel' 카테고리의 다른 글
@babel/parser (0) | 2022.04.17 |
---|---|
@babel/polyfill 공식 문서 (0) | 2022.04.17 |
@babel/cli 공식 문서 (0) | 2022.04.16 |
Babel 2021 로드맵 (0) | 2022.04.16 |
Babel preset-typescript 관련 옵션 (0) | 2022.04.16 |
Comments