@Itvanya

Почему Gulp так долго компилирует и пакует код из jsx > js?

Друзья, всем привет. Пишу код на реакте, в качестве системы сборки использую gulp#4.0. Для сборки require js использую обычный browserify в связке с gulp. Сборка кода js получается в ~30 сек, а вотчер обновляется только через 7-8 секунд после сохранения файла. Ниже выкладываю код таска, который бандлит весь код JS. Данный код забирает все React компоненты из app.js, оборачивает в обертку от browserify для использование require js в браузере, транспайлит в ES5 и минифицирует. Таким образом и весь клиентский код и библиотека реакт оказываются в одном файле bundle.js, который мы подключаем позже. Весь процесс занимает до ~30 секунд, а вотчер обновляет в пределе тех же 7-8 сек. На сколько данная ситуация нормальна, или что-то я делаю не так, что делает такие задержки во времени? Как можно ускорить сборку с реактом? Заранее благодарен.
gulp.task('scripts', function() {
	return browserify('dev/js/app.js')
		.transform("babelify", {presets: ["es2015", "react"]})
		.bundle()
		.pipe(source('bundle.js'))
		.pipe(buffer())
		.pipe(uglify({
			mangle : true,
			compress : true
		}))
		.pipe(gulp.dest('public/js'));
});
gulp.watch('dev/js/*.js', gulp.series('js'));
  • Вопрос задан
  • 402 просмотра
Решения вопроса 1
delphinpro
@delphinpro
frontend developer
А зачем библиотеку в общий бандл? Я вендоров отдельным таском собираю, в отдельный файл, т.к. они редко добавляются/удаляются. А свой код уже отдельно, и компилится он мгновенно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы