Как использовать globs, чтобы не выполнять действия над файлом? (Глоток)

Я использую gulp с gulp-if, gulp-babel и gulp-uglify, я намерен не запускать babel или uglify для минимизированных файлов JS, поскольку минимизированные файлы - это все файлы lib / vendor, которые не нужно обрабатывать, Однако их нужно переместить в новую папку.

Вот что у меня есть:

.pipe($.if(!/(.min.js)/g,
  $.babel({
     presets: ['es2015']
  })
 ))
.pipe($.if(!/(.min.js)/g,
   $.uglify()
))

Я не думаю, что остальная часть контекста слишком важна, поэтому я оставил это в стороне.

Проблема, с которой я сталкиваюсь в настоящее время, заключается в том, что выражение не работает, я думаю, я не совсем понял синтаксис того, как работает gulp-if.

Каков наилучший способ сделать это?

1 ответ

Решение

Я был в состоянии понять это..

Я заменил .pipe($.if(/.min.js/g, с .pipe($.if(match,

Затем создал функцию соответствия..

function match(file) {
    if (file.path.match(/.min.js/g)) {
        return false;
    } else {
        return true;
    }
}

Теперь все работает как положено!

Пожалуйста, дайте мне знать, если есть более простой / лучший способ сделать это!

Другие вопросы по тегам