Есть gulpfile.js, он работает хорошо, но есть одно но. При любой ошибке в less, нужно перезапускать gulp watch
. Подскажите, как это исправить?
var gulp = require('gulp'),
less = require('gulp-less'), //подключаем препроцессор LESS
browserSync = require('browser-sync'), //Подключаем Browser Sync
concat = require('gulp-concat'), // Подключаем gulp-concat (для конкатенации файлов)
uglify = require('gulp-uglifyjs'), // Подключаем gulp-uglifyjs (для сжатия JS)
cssnano = require('gulp-cssnano'), // Подключаем пакет для минификации CSS
rename = require('gulp-rename'); // Подключаем библиотеку для переименования файлов
del = require('del'), // Подключаем библиотеку для удаления файлов и папок
imagemin = require('gulp-imagemin'), // Подключаем библиотеку для работы с изображениями
pngquant = require('imagemin-pngquant'), // Подключаем библиотеку для работы с png
cache = require('gulp-cache'), // Подключаем библиотеку кеширования
autoprefixer = require('gulp-autoprefixer'),// Подключаем библиотеку для автоматического добавления префиксов
smartgrid = require('smart-grid'),
gcmq = require('gulp-group-css-media-queries'),
plumber = require('gulp-plumber'),
cleanCSS = require('gulp-clean-css'),
sourcemaps = require('gulp-sourcemaps'),
connect = require('gulp-connect-php');
gulp.task('default', function (){
console.log('Введите функцию.');
});
gulp.task('connect', function(callback) {
connect.server({
port: 8001
}, callback);
});
gulp.task('browser-sync', ['connect'], function(){
browserSync({
server: {
baseDir: 'project'
},
notify: false,
});
});
gulp.task('less', function() {
return gulp.src('build/less/*.less')
.pipe(plumber())
.pipe(less())
.pipe(autoprefixer(['last 15 versions', '> 1%', 'ie 8', 'ie 7'], { cascade: true })) //Включаем автопрефиксы
.pipe(gcmq()) //Группируем медиазапросы
.pipe(sourcemaps.init())
.pipe(cleanCSS({compatibility: 'ie8'}))
.pipe(sourcemaps.write())
.pipe(gulp.dest('project/css'))
.pipe(browserSync.reload({stream: true}))
});
gulp.task('scripts', function(){
return gulp.src([
'build/libs/jquery/dist/jquery.min.js',
'build/libs/jquery.mask.min.js',
'build/libs/owl.carousel.min.js'
])
.pipe(concat('libs.min.js'))
.pipe(uglify())
.pipe(gulp.dest('project/js'));
});
gulp.task('css-libs', ['less'], function(){
return gulp.src('project/css/libs.css')
.pipe(cssnano())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('project/css/'));
});
gulp.task('watch', ['browser-sync', 'css-libs', 'scripts'], function() {
gulp.watch('build/less/*.less', ['less']);
gulp.watch('project/**/*.php', browserSync.reload);
gulp.watch('project/*.html', browserSync.reload);
gulp.watch('project/**/*.js', browserSync.reload);
gulp.watch('project/fonts/*', browserSync.reload);
});
P.S. скрин ошибки
Перенеси plumber()
выше, что бы он перехватывал ошибки less()
gulp.task('less', function() {
return gulp.src('build/less/*.less')
.pipe(plumber())
.pipe(less())
.pipe(autoprefixer(['last 15 versions', '> 1%', 'ie 8', 'ie 7'], { cascade: true })) //Включаем автопрефиксы
.pipe(gcmq()) //Группируем медиазапросы
.pipe(sourcemaps.init())
.pipe(cleanCSS({compatibility: 'ie8'}))
.pipe(sourcemaps.write())
.pipe(plumber.stop())
.pipe(gulp.dest('project/css'))
.pipe(browserSync.reload({stream: true}))
});
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Делаю меню на jQuery UIКак сделать, чтобы все подпункты были сверху на одной линии?
Добрый день! Есть скрипт модального окнаСкрипт выполняется сразу же как посетитель открыл первую страницу сайта, т
Здравствуйте! Есть массив чиселМне надо проверить этот массив на наличие чисел, в состав которых входит цифра 6