UglifyJS로 ES2015 minify
UglifyJS를 사용하여 ES2015 코드를 minify하는 방법을 적어 둡니다.
2017년 10월 추가
월일은 흘러 현재 ES2015+ 대응의 브랜치는 별도 라이브러리로서 npm 에 등록되어 있는 것 같습니다. 그 이름도 uglify-es !!
npm 명령으로 설치할 수 있습니다.
$ npm install uglify-es -g
설치된 명령 이름은 여전히
uglifyjs
같네요.$ uglifyjs [input files] [options]
이하, 지금은 오래된 내용이지만 ↓↓
샘플 코드
적당히 Hello,world 하는 코드를,
input.js
'use strict';
document.addEventListener('DOMContentLoaded', (e) => {
let name = 'world';
document.querySelector('.foobar').textContent = `Hello,${name}!`;
}, false);
let 키워드, 화살표 함수, 템플릿 문자열을 사용해보십시오.
이것을 minify합시다.
정상적으로하면 오류를 토하고 이끼
우선 공식 리포지토리 에 쓰여진 대로 보통으로 인스톨 해 보통으로 실행해 보겠습니다.
$ npm install uglify-js -g
$ uglifyjs --compress --mangle -- input.js
그러면
화살 함수에서 Parse Error를 토하고 중지합니다.
그 외, let 키워드·템플릿 캐릭터 라인·제네레이터 함수등도 용서해 주지 않는 것 같습니다. 멋지다.
Issue가 올랐다.
뭐 당연히 요망이 오르네요. Issue가있었습니다.
Harmony support · Issue #448 · mishoo/UglifyJS2
흐름을 쫓아 가면,
라는 것.
harmony 브랜치 시도
먼저 조금 전 설치한 것을 제거합니다.
$ npm remove uglify-js -g
예,
다시 GitHub에서 설치하십시오. 시도해 봅시다.
npm은 Git 리포지토리의 URL을 직접 지정하여 리포지토리에서도 설치할 수 있습니다.
#
다음에 브랜치를 지정하면 master 이외의 브랜치에서도 설치할 수 있습니다.$ npm install -g https://github.com/mishoo/UglifyJS2.git#harmony
$ uglifyjs --compress --mangle -- input.js
완료
주의점
npm 버전이 오래되면 https를 통해 설치하지 못할 수 있습니다.
설치 중에 실패하는 경우
npm update -g npm
에서 npm을 최신으로 시도하십시오.
Reference
이 문제에 관하여(UglifyJS로 ES2015 minify), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/todays-mitsui/items/aada0f173060ec96392e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)