LoginSignup
18

More than 5 years have passed since last update.

Sassのエラー時にgulpのタスクを終了させない

Posted at

現状と課題

  • gulpを使ってsassをコンパイルしてる
  • gulp.watch で監視してる
  • sassの構文エラーがあるとgulpのタスクが終わる
  • cssが更新されない事に気づかない

→ sassでエラーがあってもコンパイルを続けたい!

解決策

gulp-plumberを使う。

インストール

npm install --save-dev gulp-plumber

gulpfile.jsを修正

'use strict'
var gulp = require('gulp');
var sass = require('gulp-sass');
var cssnext = require('gulp-cssnext');
var plumber = require('gulp-plumber');  // < gulp-plumberを使います

var paths = {
  'scss': './src/sass/',
  'css': './../public_html/css/'
}

gulp.task('sass', function() {
  return gulp.src(paths.scss + '/*.scss')
    .pipe(plumber()) // < ここに追加!!
    .pipe(sass())
    .on('error', function(err) {
      console.log(err.message);
    })
    .pipe(cssnext())
    .pipe(gulp.dest(paths.css))
});

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

まとめ

楽になった。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18