Я использую gulp babel для компиляции es6, но похоже, что uglify полностью удаляет мой es6. Я не получаю никаких ошибок в моей командной строке при запуске. Любые идеи, почему это удаляется?
Моя задача глотка выглядит так:
gulp.task('scripts', function () {
return gulp.src('src/js/*.js')
.pipe(sourcemaps.init())
.pipe(babel())
.pipe(uglify())
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('dist/js'));
});
Мой JavaScript:
document.addEventListener('DOMContentLoaded', function (event) {
console.log('ready to es6!');
const foo = 4;
});
Выводимый, скомпилированный / увеличенный javascript:
"use strict";document.addEventListener("DOMContentLoaded",function(e){console.log("ready to es6!")});
//# sourceMappingURL=scripts.js.map
Обратите внимание, что const foo = 4
пропущен. Удаление .pipe(babel())
приводит к правильной компиляции const
.
Если это полезно, devDependencies:
"devDependencies": {
"@babel/core": "^7.2.2",
"@babel/preset-env": "^7.2.3",
"browser-sync": "^2.26.3",
"gulp": "^3.9.1",
"gulp-babel": "^8.0.0-beta.2",
"gulp-sass": "^4.0.2",
"gulp-sourcemaps": "^2.6.4",
"gulp-uglify": "^3.0.1",
"node-sass": "^4.11.0"
}