Gulp babel es2015 преобразуется очень медленно
Я пытаюсь запустить babel-preset-es2015 на моем JavaScript с помощью gulp, но он берет навсегда даже на одной строке кода. Сначала я попробовал с моим пакетом script, который составляет около 700 loc, а затем с манекеном script, который является 1 строкой. Первый случай занимает около 9 с - с 1 строкой я принимает 8.38 с.
Это моя точная настройка:
package.json:
{
"devDependencies": {
"gulp": "^3.9.0",
"gulp-babel": "^6.1.1",
"babel": "^6.3.26",
"babel-preset-es2015": "^6.3.13"
},
"babel": {
"presets": [ "es2015" ]
}
}
gulpfile.js:
gulp.task('js', function () {
return gulp.src('dummyscript.js')
.pipe(concat('site.bundle.js'))
.pipe(babel())
.pipe(gulp.dest(paths.dest.scripts));
});
dummy.js:
console.log('dummy script');
Я запускаю node v4.2.4 и npm v2.14.12.
Другие операции типа gulp -react и gulp -uglify все принимают около 180 мс вместе.
Что происходит?
Ответы
Ответ 1
У Babel 6 есть много сильно вложенных подзависимостей. Это может быть довольно медленным, если у вас есть не сглаженное дерево зависимостей. В вашем случае вы используете npm 2, вам нужно либо npm dedupe
, либо установить [email protected]
и переустановить, чтобы ваши зависимости были сплющены.