【问题标题】:Browserify and Gulp - handing errorsBrowserify 和 Gulp - 处理错误
【发布时间】:2015-10-26 12:48:10
【问题描述】:

所以我有一个 gulpfile,

var gulp = require('gulp');
var browserify = require('gulp-browserify');
var rename = require('gulp-rename');
var uglify = require('gulp-uglify');
var source =  require('vinyl-source-stream');


gulp.task('js', function () {
    gulp.src('js/main.js')
        .pipe(browserify())
        .pipe(rename('js/bundle.js'))
        .pipe(uglify())
        .pipe(gulp.dest('./'));

})

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

    gulp.watch('js/*.js', ['js']);
})

相当混乱的标准东西 - 但我遇到的问题是而不是给我一个错误 gulp 文件只是打破了我的 gulp 手表

events.js:85
      throw er; // Unhandled 'error' event
            ^
Error: module "./sticknav.js

在这种情况下,这是一个错字 - 应该是stickynav.js,但现在这意味着我必须返回并重新开始gulp watch。如何在不中断的情况下捕获错误。

【问题讨论】:

    标签: gulp browserify gulp-watch


    【解决方案1】:

    看来这是一个常见问题,可以用gulp管道工解决

    https://www.npmjs.com/package/gulp-plumber

    只需通过管道工进行管道传输,NPM 流问题就解决了。到目前为止对我来说很好。

    我还为咆哮添加了带有声音(OSX)的通知。

    完整的 gulpfile.js:

    var gulp = require('gulp');
    var browserify = require('gulp-browserify');
    var rename = require('gulp-rename');
    var uglify = require('gulp-uglify');
    var source =  require('vinyl-source-stream');
    var notify = require("gulp-notify");
    var plumber = require('gulp-plumber');
    
        function errorAlert(error){
    
        notify.onError({title: "Error", message: "Check your terminal", sound: "Funk"})(error); //Error Notification
        console.log(error.toString());//Prints Error to Console
        this.emit("end"); //End function
    };
    
    
    
    gulp.task('js', function () {
        return gulp.src('js/main.js')
            .pipe(plumber({errorHandler: errorAlert}))
            .pipe(browserify({debug:  true}))
            .pipe(rename('js/bundle.js'))
            //.pipe(uglify())
            .pipe(gulp.dest('./'))
            .pipe(notify({title: "Success", message: "Well Done!", sound: "Glass"}));
    
    
    })
    
    gulp.task('watch', function () {
    
        gulp.watch('js/*.js', ['js']);
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多