Javascript 不冻结的GulpJs错误处理

Javascript 不冻结的GulpJs错误处理,javascript,gulp,build-system,Javascript,Gulp,Build System,我正在尝试将我的sass和其他一些东西一起转换为css。如果出现错误,我在处理sass转换时遇到问题。我可以让它告诉我,但它挂了,我必须重新开始吞咽。我怀念这里和那里的打字,我虔诚地按ctrl+s,所以当我的每一个打字错误都被吞咽时,它会变得非常烦人。以下是我所拥有的: gulp.task('default', function () { var sassSrc = './src/scss/*.scss', sassDst = './build/css',

我正在尝试将我的sass和其他一些东西一起转换为css。如果出现错误,我在处理sass转换时遇到问题。我可以让它告诉我,但它挂了,我必须重新开始吞咽。我怀念这里和那里的打字,我虔诚地按ctrl+s,所以当我的每一个打字错误都被吞咽时,它会变得非常烦人。以下是我所拥有的:

gulp.task('default', function () {
    var sassSrc = './src/scss/*.scss',
        sassDst = './build/css',
        htmlSrc = './src/*.html',
        htmlDst = './build';

gulp.src(sassSrc, {unpipeOnError: false})
    .pipe(watch(function(files) {
        return files.pipe(plumber())
            .pipe(sass())
            .on("error", notify.onError())
            .pipe(prefix("last 3 version", "> 1%", 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', "Android 4"))
            .pipe(minifyCSS())
            .pipe(gulp.dest(sassDst))
            .pipe(notify({ message: 'Styles task complete' }));
    }));

    gulp.src(htmlSrc)
    .pipe(watch(function(files) {
        return files.pipe(minifyHTML())
            .pipe(gulp.dest(htmlDst));
    }));
});
尝试使用节点中的类。不要直接传递
notify.onError()
,还要发出
end
事件。将相关代码更改为以下代码块:

.on('error', function() {
    notify.onError().apply(this, arguments);
    this.emit('end');
})

而且,即使出现错误,
gulpwatch
也应继续响应更改。希望这有帮助

我可以添加.pipe(sass({errLogToConsole:true}))使它停止拖拽gulp文件,但我不能让它也设置一个Notify。它将打印到控制台,但我不想每次都达到峰值。这非常有效!非常感谢。