I am using browserify so I can use npm modules in my front end code, and gulp to do my build tasks. This works fine:
var browserify = require('gulp-browserify');
gulp.task('js', ['clean'], function() {
gulp
.src('./public/js/src/index.js')
.pipe(browserify({
insertGlobals : true,
debug : ! gulp.env.production
}))
.pipe(gulp.dest('./public/js/dist'))
});
However if there's a syntax error in my JS, I'd like to be notified of the error via an OS X notification. I've seen this similar question and modified my code to add an .on('error'...)
after the .browserify()
:
// Browserify/bundle the JS.
gulp
.src('./public/js/src/index.js')
.pipe(browserify({
insertGlobals : true,
debug : ! gulp.env.production
}).on('error', function(err){
notify.onError({
message: "Error: <%= error.message %>",
title: "Failed running browserify"
}
this.emit('end');
})
.pipe(gulp.dest('./public/js/dist'))
However this doesn't notify when my JS is broken. Adding a console.log() inside on('error',...)
doesn't log either. I suspect because that question doesn't involve using gulp piping.
How can I get notified of errors during when piping to gulp browserify?
Use gulp-notify. Note also you should use the browserify module instead of the deprecated gulp-browerify module.
Here example how to use
browserify
util ingulp
task.Here another example how to use
browserify
and show notification, when js has syntax errors.