使用browserify并重新执行时如何处理反应错误?

时间:2015-02-13 22:25:50

标签: javascript gulp reactjs browserify

在我的Web应用程序中,我创建了gulpfile,它通过使用browserify的reactify来编译反应文件。以下是我的捆绑任务的外观:

var bundler = watchify(browserify({
    entries: config.paths.src.js.app,
    transform: [reactify, envify],
    debug: isDevelopment,
    cache: {}, packageCache: {}, fullPaths: true
}), watchify.args);

var bundle = function() {
    start();
    return bundler
        .bundle()
        .on('error', errorLog)
        .pipe(source(config.paths.build.appName))
        .pipe(gulpif(!isDevelopment, streamify(uglify())))
        .pipe(gulp.dest(config.paths.build.folder))
        .pipe(reload({stream:true}))
        .on('end', end);

};

function errorLog(error) {
    log('******  Start of Error  ******');
    gutil.log(gutil.colors.red(error.message));
    log('******  End of Error  ******');
}

问题在于,当发生错误时,我的gulp会崩溃。不知道如何处理它。水管工在那种情况下不起作用。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

This helped me

尝试将this.emit('end');添加到errorLog

function errorLog(error) {
    log('******  Start of Error  ******');
    gutil.log(gutil.colors.red(error.message));
    log('******  End of Error  ******');
    this.emit('end');
}