Заставить gulp-usemin выводить только не минифицированные файлы
Я хотел бы иметь весь Javascript в одном scripts.js
файлы. Вот часть моего index.html
:
<!-- build:inlinejs js/scripts.js -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<script src="bower_components/moment/min/moment.min.js"></script>
<script src="bower_components/moment/locale/de.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js"></script>
<script src="js/main.js"></script>
<!-- endbuild -->
Моя текущая конфигурация Gulp выглядит следующим образом:
gulp.task('usemin', function () {
return gulp.src('./*.html')
.pipe(usemin({
css: [minifyCss(), 'concat'],
html: [minifyHtml({empty: true})],
js: [uglify(), rev()],
inlinejs: [uglify()],
inlinecss: [minifyCss(), 'concat'],
inline: ['concat']
}))
.pipe(gulp.dest('dist/'));
});
Как вы можете видеть, уже есть много уменьшенных файлов Javascript, поэтому я не хочу, чтобы моя сборка тратила драгоценное время на уничтожение уже уменьшенных файлов. Как я могу сделать, чтобы убрать только не минимизированные файлы?
1 ответ
Решение
Я знаю, что об этом уже спрашивали, но у меня была та же проблема, и я нашел решение.
В вашем HTML вы можете дать имена для блоков сборки:
<!-- build:jsLibs js/libs.js -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- endbuild -->
<!-- build:jsApp js/app.js -->
<script src="js/main.js"></script>
<!-- endbuild -->
И в глотке:
gulp.task('usemin', function () {
return gulp.src('./*.html')
.pipe(usemin({
...
jsLibs: ['concat'],
jsApp: [uglify, rev]
}))
.pipe(gulp.dest('dist/'));
});
Надеюсь, что это помогает кому-то еще.