sparcut sparcut - 2 months ago 16
Javascript Question

How do I exclude only .min.js files in gulp task, while staying in same directory?

I am trying to set up a build system for my front end work though I am running into a problem where it loops processing files over and over again. This is a problem with my js processing since I am not sure how to exclude just the files with .min as a suffix.

The task goes as follows

return gulp.src(["!dev/js/*.min.js", "dev/js/*.js"])
.pipe(plumber())
.pipe(browserify())
.pipe(smaps.init())
.pipe(uglyify({preserveComments: "license"}))
.pipe(smaps.write())
.pipe(rename({suffix: ".min"}))
.pipe(gulp.dest(output_dir));


Though what I have found is that it still targets the .min.js files since they are also seen as .js files. I have messed around with a few different configurations of these wildcards but I keep ending up with the task looping creating
example.min.js
then
example.min.min.js
then
example.min.min.min.js
etc.

So, how can I just process files that do not include the .min prefix?

Answer

You can use negated patterns to exclude .min.js files.

gulp.src(['dev/js/*.js', '!dev/js/*.min.js'])