Всем привет!
Кто разбирается в gulp подскажите в чем проблема.
Очень долго генерируется jade, всё остальное генерируется быстро. Jade генерирует 118 файлов, которые разложены по папкам, максимальная глубина 3 папки. генерируется около 40 секунд.
При этом такое же кол-во файлов sass и такая жа структура как и у jade генерируется мгновенно.
var gulp = require('gulp'),
browserSync = require('browser-sync'),
sass = require('gulp-sass'),
jade = require('gulp-jade'),
plumber = require('gulp-plumber'),
concat = require('gulp-concat'),
spritesmith = require('gulp.spritesmith'),
buffer = require('vinyl-buffer'),
csso = require('gulp-csso'),
imagemin = require('gulp-imagemin'),
merge = require('merge-stream'),
reload = browserSync.reload;
gulp.task('jade', function() {
return gulp.src(['./app/jade/**/*.jade', '!./app/jade/**/_*.jade'])
.pipe(plumber())
.pipe(jade({pretty: true}))
.pipe(gulp.dest('./dist/'));
});
gulp.task('jade-watch', ['jade'], reload);
gulp.task('sass', function () {
return gulp.src(['./app/scss/**/*.scss', '!./app/sass/**/_*.scss'])
.pipe(plumber())
.pipe(sass())
.pipe(csso())
.pipe(gulp.dest('./dist/css'))
.pipe(reload({stream: true}));
});
gulp.task('jsConcat', function () {
return gulp.src('./app/js/all/*.js')
.pipe(concat('all.js', {newLine: ';'}))
.pipe(gulp.dest('./dist/js/'))
.pipe(browserSync.stream());
});
gulp.task('jsSync', function () {
return gulp.src(['./app/js/**/*.js', '!./app/js/all/*'])
.pipe(plumber())
.pipe(gulp.dest('./dist/js/'))
.pipe(browserSync.stream());
});
gulp.task('sprite', function () {
var spriteData = gulp.src('./app/images/sprite/*.png').pipe(spritesmith({
imgName: 'sprite.png',
imgPath: '../images/sprite.png',
cssName: 'sprite.css'
}));
var imgStream = spriteData.img
.pipe(buffer())
.pipe(imagemin())
.pipe(gulp.dest('./dist/images/'));
var cssStream = spriteData.css
//.pipe(csso())
.pipe(gulp.dest('./dist/css/'));
return merge(imgStream, cssStream);
});
gulp.task('compress', function(){
gulp.src(['./app/images/**/*.{jpg,jpeg,png,gif}', '!./app/images/sprite/**/*.{jpg,jpeg,png,gif}', '!./app/images/svg/**/*.{jpg,jpeg,png,gif}'])
.pipe(plumber())
.pipe(imagemin())
.pipe(gulp.dest('./dist/images'));
});
gulp.task('watch', function () {
gulp.watch('./app/scss/**/*.scss', ['sass']);
gulp.watch('./app/jade/**/*.jade', ['jade']);
gulp.watch('./app/js/**/*.js', ['jsSync']);
gulp.watch('./app/js/all/**/*.js', ['jsConcat']);
gulp.watch('./app/jade/**/*.jade', ['jade-watch']);
});
gulp.task('browser-sync', function () {
browserSync.init({
port: 1337,
server: {
baseDir: './dist/'
}
});
});
gulp.task('default', ['jade', 'sass', 'jsConcat', 'jsSync', 'watch', 'browser-sync']);