如何在丢失的文件上获得gulp错误
How to get gulp to error on missing file?
我已经设置了这样的gulpfile.js:
var scripts = [
'bower_components/timezone-js/src/date.js',
'bower_components/jquery/jquery.min.js',
'bower_components/jquery-migrate/jquery-migrate.js',
'bower_components/jquery-ui/ui/minified/jquery-ui.min.js',
'bower_components/jqueryui-touch-punch/jquery.ui.touch-punch.min.js',
...
];
gulp.task('scripts', function () {
return gulp.src(scripts, {base: '.'})
.pipe(plumber(plumberOptions))
.pipe(sourcemaps.init({
loadMaps: false,
debug: debug,
}))
...
。,我所有的脚本文件都是精确匹配的。不匹配。
有时我弄乱了文件路径或作者更改了目录结构。我希望在发生这种情况时得到通知,而不是脚本被静默地排除并导致运行时错误。
我是否有办法让gulp.src
报告这些错误?
根据这个答案使用gulp-expect-file
var coffee = require('gulp-coffee');
var expect = require('gulp-expect-file');
gulp.task('mytask', function() {
var files = ['idontexist.html'];
return gulp.src(files)
.pipe(expect(files))
.pipe(coffee());
});
(由于rve)
gulp.src
实际上只是vinyl-fs.src
的别名,看起来像这样:
function src(glob, opt) {
opt = opt || {};
var pass = through.obj();
if (!isValidGlob(glob)) {
throw new Error('Invalid glob argument: ' + glob);
}
// return dead stream if empty array
if (Array.isArray(glob) && glob.length === 0) {
process.nextTick(pass.end.bind(pass));
return pass;
}
var options = defaults(opt, {
read: true,
buffer: true
});
var globStream = gs.create(glob, options);
// when people write to use just pass it through
var outputStream = globStream
.pipe(through.obj(createFile))
.pipe(getStats(options));
if (options.read !== false) {
outputStream = outputStream
.pipe(getContents(options));
}
return outputStream.pipe(pass);
}
它反过来使用glob-stream,后者使用glob。您可以绕过其中的大部分,直接使用through2从数组文件创建管道。我还没想出怎么做。
相关文章:
- gulp Iconify任务抛出错误TypeError:Path必须是字符串.收到false
- 最小化js时出现Gulp错误
- Gulp-Jasmine 给出了 SystemJS 的错误
- gulp-jquery验证错误
- Gulp,未捕获语法错误:意外的标记<
- Gulp 4 TypeScript编译错误
- Gulp 4 迁移错误(您是否忘记发出异步完成信号?
- 错误:[$injector:模块rr] 与角度 JS [GULP CONTEXT]
- Gulp.js 在 LESS 文件中出现错误后,在观看时停止编译 LESS
- Gulp 在 gulp.src() 中的符号链接上给出错误
- browserSync + Gulp,得到错误 => TypeError: _.contains 不是一个函数
- 如何从 gulp-esdoc 内部触发错误
- Gulp - 使用 gulp-uglify 和 gulp-concat 的意外令牌错误
- gulp - 导致任务停止的错误
- Gulp错误:找不到模块浏览
- 在gulp错误时恢复项目
- Gulp错误- TypeError:不能调用方法'match'的定义
- 使用Gulp jade的yeoman网络应用程序生成器出现Gulp错误
- 有scss的node_module上的Gulp错误
- 如何在丢失的文件上获得gulp错误