@bormor

Как сделать перезапуск gulp при изменениях в gulpfile.js?

Хочу найти аналог gulp-watch который бы перезапускал gulp при правках в самом gulpfile.js.

Нагуглить пока смог только такое решение
https://codepen.io/ScavaJripter/post/how-to-watch-...

Есть еще какие-то проверенные варианты?

Это решение у меня не заработало корректно (при обновлении gulpfile.js файл style.css не пересобирается).
Может где ошибся? Или есть более надежные альтернативы?
Код
/****************************************************************
Подключение зависимостей 
*****************************************************************/


const gulp        = require('gulp');     //gulp локально
const sass        = require('gulp-sass');
const watch       = require('gulp-watch');  //перезапуск задач по обновлению файлов (штатный watch может глючить при добавлении нового файла)
const sourcemaps  = require('gulp-sourcemaps');
const concat      = require('gulp-concat'); // Конкатенация файлов
const minifyCSS   = require('gulp-csso');
const plumber     = require('gulp-plumber');
const notify      = require("gulp-notify");




/****************************************************************
CSS
*****************************************************************/


	gulp.task('sass', function(){ 

		gulp.src(['_sass/**/*+(.sass|.scss)']) 
			
			.pipe(sourcemaps.init()) 
			.pipe(sass({outputStyle: 'expanded'}).on('error', sass.logError)) 
			.pipe(concat('style.css')) 	
			.pipe(minifyCSS({restructure: false}))
			.pipe(sourcemaps.write())
			.pipe(gulp.dest('css'));


	});


/****************************************************************
Перезапуск задач по обновлению файлов 
*****************************************************************/


gulp.slurped = false; // step 1

	gulp.task("watch", function(){
	    if(!gulp.slurped){ // step 2
	        gulp.watch("gulpfile.js", ["default"]);
			gulp.watch('_sass/**/*+(.sass|.scss)', ['sass']); 
	        gulp.slurped = true; // step 3
	    }
	});



/****************************************************************
ИТОГОВЫЕ ЗАДАЧИ
*****************************************************************/


// gulp
gulp.task('default', [
	'sass',
	'watch'
	]);
  • Вопрос задан
  • 864 просмотра
Пригласить эксперта
Ответы на вопрос 1
abyrkov
@abyrkov
JavaScripter
NPM показывает вот на такой плагин
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы