PDH 개발 공부
[Babel.js] 플러그인 적용 (2) 본문
- 이 방법은 각각 선택해서 변경 할 수 있는 방법이다.
babel plugin
- 설치
$ npm i -D @babel/core @babel/cli
- 소스 파일 작성(EX6)
플러그인 적용
- 블록 스코프 변수 변환(@babel/plugin-transform-block-scoping)
$ npm i -D @babel/plugin-transform-block-scoping $ npx babel src/ex01.js -o dist/ex01.01.js --plugins @babel/plugin-transform-block-scoping $ cat dist/ex01.01.js
- 객체분해-파라미터 변환(@babel/plugin-transform-parameters)
$ npm i -D @babel/plugin-transform-parameters $ npx babel src/ex01.js -o dist/ex01.02.js --plugins @babel/plugin-transform-parameters $ cat dist/ex01.02.js
- 템플릿 문자열 변환(@babel/plugin-transform-template-literals)
$ npm i -D @babel/plugin-transform-template-literals $ npx babel src/ex01.js -o dist/ex01.03.js --plugins @babel/plugin-transform-template-literals $ cat dist/ex01.03.js
- for..of 변환(@babel/plugin-transform-for-of)
$ npm i -D @babel/plugin-transform-for-of $ npx babel src/ex01.js -o dist/ex01.04.js --plugins @babel/plugin-transform-for-of $ cat dist/ex01.04.js
- 모든 변환 적용
$ npx babel src/ex01.js -o dist/ex01.all.js --plugins @babel/plugin-transform-block-scoping --plugins @babel/plugin-transform-parameters --plugins @babel/plugin-transform-template-literals --plugins @babel/plugin-transform-for-of $ cat dist/ex01.all.js
예제 (블록 스코프 변수 변환)
기존코드
'use strict'
// 블록 스코프 변수(ES6)
const users = [{
no: 0,
name: '마이콜',
email: 'michol@gmail.com'
},{
no: 1,
name: '둘리',
email: 'dooly@gmail.com'
}];
// 객체분해-파라미터(ES6)
function print({no, name, email}) {
// 템플릿 문자열(ES6)
console.log(`${no}: ${name} : ${email}`);
}
// for..of(ES6)
for(let user of users) {
print(user);
**변환코드
'use strict';
// 블록 스코프 변수(ES5) 로 변환 되었다.
var users = [{
no: 0,
name: '마이콜',
email: 'michol@gmail.com'
}, {
no: 1,
name: '둘리',
email: 'dooly@gmail.com'
}]; // 객체분해(ES6)
function print({
no,
name,
email
}) {
// 템플릿 문자열(ES6)
console.log(`${no}: ${name} : ${email}`);
} // for..of(ES6)
for (var user of users) {
print(user);
}
'JavaScript > Babel' 카테고리의 다른 글
[Babel.js] Env Preset (3) (1) | 2021.08.04 |
---|---|
[Babel.js] 기본 개념 (1) (0) | 2021.08.04 |