未找到src中指定的文件时,未触发gulp.src()。on('error',()=> {})

时间:2018-04-13 17:15:11

标签: node.js gulp gulp-concat

我正在尝试使用npm的gulp和gulp-concat模块来连接多个文件。

以下是我使用过的代码段。

gulp.src(['../a.js', '../b.js', '../c.js'])
    .pipe(concat('destination.js'))
    .pipe(gulp.dest('destination/path/'))
    .on('error', () => {
        console.error('Error');
     })
    .on('finish', () => {
        console.log('Success');
    });

在指定路径中找不到假设b.js或anyother的文件时,不会触发错误事件侦听器。

无论如何,事件结束都会被触发。

如何找到此过程中找不到文件等错误?

感谢您的帮助

2 个答案:

答案 0 :(得分:0)

我终于从下面的帖子中找到了解决方案

How to make Gulp.src fail if a file is missing?

我使用文件存在的npm包来检查是否存在所有文件。

答案 1 :(得分:0)

您可以使用gulp-plumber来在构建时出错。

示例:

第1步::安装gulp-plumber:

npm i gulp-plumber --save-dev

第2步::需要在gulpfile中使用gulp plmber模块:

var plumber = require('gulp-plumber');   

第3步:用法

gulp.src(['../a.js', '../b.js', '../c.js'])
.pipe(plumber())
.pipe(concat('destination.js'))
.pipe(plumber.stop())
.pipe(gulp.dest('dist/js'));