【问题标题】:Gulp-coffee remove nonexistent filesGulp-coffee 删除不存在的文件
【发布时间】:2016-06-13 15:41:44
【问题描述】:

我正在使用 gulp-coffee 将我的咖啡文件编译为 js,没什么特别的。

我很难弄清楚如何删除源 coffee 文件夹中不再存在的 js 文件(在 dest js 目录中)。

我很确定这与 gulp-coffee 没有直接关系,但我有点无能为力,而且我对 gulp 不是那么精通。

我的文件结构

/app/
  /coffee (source)
  /js     (dest)

我的任务

gulp.task('coffee', function() {
    return gulp.src('app/coffee/**/*.coffee')
    .pipe($.changed('./app/js/', {extension: '.js'}))
    .pipe($.coffee())
        .on('error', logCoffeeError)
    .pipe(gulp.dest('app/js/'));
});

【问题讨论】:

  • 为什么不手动删除所有 .js 文件,然后重新启动 gulp?它将正确重新编译并重新创建相关文件。
  • 我在开发过程中创建和删除多个文件,手动删除它们会破坏自动化过程(例如 js 注入 index html 文件)
  • 好吧,如果你的咖啡文件被编译成 JS,那么删除所有 JS 文件并让 Gulp 重建它们是没有危险的。还是我错过了什么?
  • 就此而言,您应该将所有内容连接并缩小到一个文件中,并获得一个 script.min.js 文件。不需要更多。
  • 不,没有任何问题,它不是自动的,我每天会手动执行数十次,如果我忘记这样做,我可能会注入我不想要的旧文件

标签: javascript build coffeescript gulp gulp-plugin


【解决方案1】:

如果有人对这个问题的解决方案感兴趣,我最终会使用这个包,它完全符合我的要求:https://github.com/StevenTheEVILZ/gulp-syncronize

用法:

gulp.task('unused', function() {
    return syncronize({
        src:    'app/coffee/',  //Source folder
        target: 'app/js/',      //Output folder
        extensions: {
            'js': 'coffee', // Corresponds .js files to the .coffee files; 
        }
    });
});

【讨论】:

  • 太可怕了!只需清理和重建,这是安全的方法。
猜你喜欢
  • 2020-03-16
  • 1970-01-01
  • 2016-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多