Как “подружить” bower и gulp?

215
25 января 2018, 17:22

Всем привет. Использую gulp и bower, и, честно говоря, только спустя год снизошло просвещение, что использую я эту связку на 10% от всей мощи. Использую сейчас так:

Есть простой bower таск, который идет в массиве подзадач в таске watch:

gulp.task('bower', function() {
  return bower({ directory: './dist/js/' })
});

Т.е. gulp тупо копирует все файлы из bower_components в build/js (все папки, если быть точнее).

Вопрос: какие есть пути, чтобы использовать эту связку на максимум, то есть как все файлы *.min.js перекидывать в /dist/js, а все файлы *.min.css - в /dist/css? А еще лучше, как организовать конкатенацию этих файлов в один (js и css, естесстна) - т.е. lib.min.js и lib.min.css? Как будет правильнее? Заранее спасибо!

Answer 1

Не думаю что это хорошая идея, тк содержат сразу несколько .min.js / .min.css, часто дублирующих содержимое друг-друга, например bootstrap:

bootstrap.min.css, bootstrap-grid.min.css, bootstrap-reboot.min.css

Но, можно сделать это так:

var gulp   = require("gulp"),
  concat   = require("gulp-concat"),
  csso     = require("gulp-csso"),
  uglify   = require("gulp-uglifyjs"),

...

        gulp.task('concats', ['concat:js','concat:css'], () => {return} )
        gulp.task('concat:js', () => {
            return gulp.src("app/libs/**/*.min.js")
                .pipe(concat("concatedjs.js"))
                .pipe(uglify())
                .pipe(gulp.dest("app/js/test"))
        })
        gulp.task('concat:css', () => {
            return gulp.src("app/libs/**/*.min.css")
                .pipe(concat("concatedcss.css"))
                .pipe(csso())
                .pipe(gulp.dest("app/css/test"))
        })

В watch пихать 'concats'

READ ALSO
Скрытие элементов в Materialize CSS

Скрытие элементов в Materialize CSS

Как скрыть некоторые элементы для обычного пользователя, а для админа разрешить в Materialize CSS фреймворке?

166
Как подключить workbench к mysql на openshift?

Как подключить workbench к mysql на openshift?

Доброго времени суток! В общем такая задача: необходимо подключить workbench к mysql серверу, развернутому на openshiftЕсли ip и port из вкладки applications -> services...

200
Хранение ключа для авторизации

Хранение ключа для авторизации

Пытаюсь реализовать авторизацию на сервере из android-приложения по алгоритму из этого ответаХотелось бы узнать больше о том, как хранить ключи...

218
mysql workbench на ubuntu

mysql workbench на ubuntu

Пытаюсь запустить mysql workbench на ubuntu 1604 под sudo юзером:

217