GULP - переменная входная папка - цикл / функция
Я использую Gulp для создания моих файлов.less, которые я использую в темах Drupal. Структура, которую я сейчас использую, выглядит следующим образом:
--basetheme/
|--css/
|--src/
--gulpfile.js
|-- less/
--subtheme/
|--css/
|--src/
--gulpfile.js
|-- less/
Поскольку это заставляет меня запустить два src / gulp-watch, я пытаюсь изменить структуру.
--_SRC/
--gulpfile.js
|--_basetheme/
|--_subtheme/
|-- less/
--basetheme
|--css
--subtheme
|--css
Я бы использовал одну папку SRC и один gulpfile на каждый "проект".
Теперь я также хочу убедиться, что мой gulpfile максимально упорядочен, я хочу иметь возможность добавлять столько "подтем", сколько я хочу в будущем, и GULP должен направлять все файлы / папки в правильное место. Но я не знаю, как правильно написать этот кусочек кода, я не достаточно, чтобы написать все, что нужно сделать...
var themes = ['basetheme','subtheme', 'INFINITE NUMBER'];
function getTheme(themes) {
// dostuff
}
var paths = {
input: './**/*',
output: '../',
styles: {
getTheme(themes): {
input: './_'. getTheme(themes) .'/less/template.less',
output: '../'. getTheme(themes) .'/css/'
}
},
};
// Process and minify Less files
gulp.task('build:styles', function() {
return gulp.src(paths.styles.'. getTheme(themes) .'.input)
.pipe(plumber())
// DO STUFF
.pipe(gulp.dest(paths.styles.'. getTheme(themes) .'.output))
.pipe(cssnano())
.pipe(rename({ suffix: '.min' }))
.pipe(gulp.dest(paths.styles.'. getTheme(themes) .'.output))
.pipe(livereload());
});