Search code examples
node.jsgulpgulp-watchgulp-sass

gulpfile: Task 'default' is not in your gulpfile , with a default does not watch


I have a simple gulp file that when i have no default task it gives me an error, but when i add a default task it does not watch.

here is what I have in the file:

'use strict';

var gulp = require('gulp');
var sass = require('gulp-sass');

gulp.task( 'default', ['sass'] );

gulp.task('sass', function () {
  return gulp.src('./sass/theme.scss')
    .pipe(sass().on('error', sass.logError))
    .pipe(gulp.dest('./css'));
});

gulp.task('sass:watch', function () {
  gulp.watch('./sass/**/*.scss', ['sass']);
});

Solution

  • You can achieve this with gulpfile like this:

    'use strict';
    
    var gulp = require('gulp');
    var sass = require('gulp-sass');
    
    gulp.task('default', ['watch']);
    
    gulp.task('sass', function () {
      return gulp.src('./sass/theme.scss')
        .pipe(sass().on('error', sass.logError))
        .pipe(gulp.dest('./css'));
    });
    
    gulp.task('watch', ['sass'], function () {
      gulp.watch('./sass/**/*.scss', ['sass']);
    });