Gulp 浏览和吞咽处理错误
所以我有一个大口文件Gulp 浏览和吞咽处理错误,gulp,browserify,gulp-watch,Gulp,Browserify,Gulp Watch,所以我有一个大口文件 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('
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']);
})
相当泥沼标准的东西-但我的问题是,而不是扔给我一个错误的咕噜文件只是打破了我的咕噜表
events.js:85
throw er; // Unhandled 'error' event
^
Error: module "./sticknav.js
在本例中,它是一个拼写错误-应该是stickynav.js,但现在它意味着我必须返回并再次开始吞咽手表。如何在不中断的情况下捕捉错误。这似乎是一个常见的问题,可以通过gulp管道工解决 只需通过管道工进行管道铺设,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']);
})