javascript - Using gulp-if with gulp-useref and gulp-uglify -


i want use gulp-useref concatenate of javascript files one.

within javascript files have mixture of pre-minified , non-minified files.

i uglify files not minified (for build performance reasons) , https://github.com/jonkemp/gulp-useref#transform-streams suggests possible (in fact, looks easy). following gulp task definition:

gulp.task('compile', function () {     return gulp.src('index.html')         .pipe(useref({}, lazypipe().pipe(function() {             return gulpif(['*.js', '!*.min.js'], uglify());         })))         .pipe(gulp.dest(paths.build)); }); 

this works, in concatenated file non-minified files remain unminified (pre-minified files still minified -- expected).

my code partially based on this: https://github.com/craigjennings11/gulp-uglifyjs

any idea why files not being minified?


references

the problem here useref passing through concatinated file names, not individual file names concatinated.

//in html <!-- build:js assets/scripts/concat.js --> // <-- 1 <script src="assets/scripts/jquery.min.js"></script> // <-- not 1 <script src="assets/scripts/gsap.min.js"></script> // <-- not 1 <script src="assets/scripts/script1.js"></script> // <-- not 1 <script src="assets/scripts/script2.js"></script> // <-- not 1 <!-- endbuild --> 

so ever pipe after have applied entire concatinated file.

but little rearranging this:

//in html <!-- build:js assets/scripts/libs.js --> <script src="assets/scripts/jquery.min.js"></script> <script src="assets/scripts/gsap.min.js"></script> <!-- endbuild -->  <!-- build:js assets/scripts/main.js --> <script src="assets/scripts/script1.js"></script> <script src="assets/scripts/script2.js"></script> <!-- endbuild --> 

that way can use gulp-if isolate main.js uglify:

.pipe(gulpif('main.js', uglify())) 

Comments

Popular posts from this blog

ruby - Trying to change last to "x"s to 23 -

jquery - Clone last and append item to closest class -

c - Unrecognised emulation mode: elf_i386 on MinGW32 -