3

現在、次のように3つの監視タスクがあります。

gulp.task('watch', function(){
    gulp.watch(sassDir + '/*.scss', ['sass']);
    gulp.watch(cssDir + '/*.css', ['css']);
    gulp.watch(jsDir + '/*.js', ['js']);
})

私の問題は、Sass がエラーをスローすると、すべての監視タスクが停止することです。次に追加しました.pipe(sass({errLogToConsole: true}))-これにより、エラーが発生してもsassウォッチタスクが存続しているように見えますが、他の2つのウォッチタスクは実行されていないようです。

sass ファイルのエラーによってすべてのコンパイルが停止しないように、すべての監視タスクをライブ状態に保つにはどうすればよいですか?

私のセットアップ:

gulp.task('sass', function () {
    gulp.src(sassDir + '/**/*.scss')
        .pipe(sass({errLogToConsole: true}))
        .pipe(gulp.dest(sassTargetDir));
});

gulp.task('css', function() {
  gulp.src(cssDir + '/**/*.css')
    .pipe(autoprefix({
            browsers: ['last 40 versions'],
            cascade: false
        }))
    .pipe(gulp.dest(cssTargetDir))
    .pipe(minify())
    .pipe(rename({suffix: '.min'}))
    .pipe(gulp.dest(cssTargetDir));
});

gulp.task('js', function() {
  gulp.src(jsDir + '/**/*.js')
    .pipe(gulp.dest(jsTargetDir))
    .pipe(uglify())
    .pipe(rename({suffix: '.min'}))
    .pipe(gulp.dest(jsTargetDir))
});

gulp.task('watch', function(){
    gulp.watch(sassDir + '/*.scss', ['sass']);
    gulp.watch(cssDir + '/*.css', ['css']);
    gulp.watch(jsDir + '/*.js', ['js']);
})

gulp.task('default', ['sass','css','js','watch']);
4

1 に答える 1