排除文件更改,但仍然保持文件

以下是我简单的一口气任务:

  • gulp.src获取script.js作为input
  • 缩小script.js并保存script.min.js
  • script.jsscript.min.js删除console.log
  • 更新script.js文件并保存script.min.js

我想简单地从一个缩小的文件(或script.min.js )而不是从script.js删除console.log ,我失败了。 我正在寻找一种方法来运行.pipe(gulpRemoveLogging...只在一个缩小的文件(即script.min.js ),不要修改任何script.js

 var gulp = require("gulp"), minify = require("gulp-minify"), gulpRemoveLogging = require("gulp-remove-logging"); var _dist_path = "./dist/"; // relative path // minify JS files gulp.task("minify-js", function() { return gulp.src(path.join(_dist_path, "/*.js")) .pipe(minify({ ext: { src: ".js", min: ".min.js" }, ignoreFiles: ["-min.js"] })) .pipe(gulpRemoveLogging({ namespace: ["console", "window.console"] // remove these namespaces. eg console.log("..."), window.console.log("...") })) .pipe(gulp.dest(_dist_path)); }); 

解决了这个问题:

添加.pipe(gulpIgnore("smartsitescripts.js")).pipe(minify({ ....pipe(gulpRemoveLogging ...

 var gulpIgnore = require("gulp-ignore"); ... .pipe(minify({ ext: { src: ".js", min: ".min.js" }, ignoreFiles: ["-min.js"] })) .pipe(gulpIgnore("script.js")) // <---- this line solved the problem .pipe(gulpRemoveLogging({ namespace: ["console", "window.console"] // remove these namespaces. eg console.log("..."), window.console.log("...") })) ... 

该行代码将从stream中排除script.js ,因此stream只包含script.min.js