javascript - 如何在丢失文件时出错?

标签 javascript node.js gulp

我已经像这样设置了 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根据 this answer .

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)

关于javascript - 如何在丢失文件时出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30265677/

相关文章:

javascript - 将枚举值绑定(bind)到 ng-options angular js

node.js - 您如何在 node.js 中验证 aws s3 身份验证版本 4 请求?

gulp - 删除 gulp 文件中的 windows 文件只读属性

javascript - Rails 服务器/控制台错误 - 没有要加载的文件 - CoffeeScript (LoadError)

javascript - 通过 javascript 或 jquery 删除特定 div 索引后的任何子元素

javascript - 不引人注意地完成 Angular Bootstrap 验证

node.js - 在 node.js 中扩展 TypeScript 全局对象

node.js - 是否有用于 nodejs(connect、express)的基于 cookie 的 session 存储?

javascript - 创建 Gulp 任务以缩小/连接文件以将来自多个目录的源代码打包到各自目录中的文件中

node.js - gulp-sourcemaps 生成一个空的名称属性