Я пытаюсь перенести проект в рабочий процесс gulp-sass. После прочтения некоторых учебников в Интернете, я имею установку очень простой gulpfile:Настройка gulp-sass для работы как sass --watch
var gulp = require('gulp'),
sass = require('gulp-sass'),
concat = require('gulp-concat');
gulp.task('styles', function() {
return gulp.src('scss/*.scss')
.pipe(sass({
'sourcemap=none': true
}))
.pipe(gulp.dest('css/'))
});
gulp.task('watch', function() {
gulp.watch('scss/**/*.scss', ['styles']);
});
Я хочу, чтобы сгенерировать *.css
файл из любого *.scss
файла, который не начинается с символом подчеркиванием.
Моя проблема: с текущим gulpfile gulp обнаружит изменения в файлах .scss
и перестроит ВСЕ библиотеки, вместо того чтобы создавать только те, на которые повлияло изменение.
К примеру, у меня есть 2 LIBS на моем проекте:
lib1
, который @imports Partialsp1
иp2
lib2
, который @imports Partialsp2
иp3
If I частичный p1
, я хочу только lib1
для обновления.
Если я отредактирую частично p3
, я хочу только обновить lib2
.
Если я отредактировал частичный номер p2
, я хочу обновить как lib1
, так и lib2
.
Текущая настройка обновляет обе библиотеки на каждое редактирование, которое я делаю в любом из источников *.scss
.
Другими словами, я бы хотел, чтобы gulp-sass вел себя так же, как sass --watch
. Это возможно? Как?
спасибо!
так, как вы предлагаете, я бы создать дополнительные задачи глотка для каждой css lib, которую я хочу сделать. С другой стороны, 'sass --watch' достаточно умен, чтобы понимать директивы' @ import' и генерировать только файлы, на которые повлияло редактирование. Это то, чего я пытаюсь достичь. Я хочу создать таблицу стилей '* .css' для каждого имени' * .scss', которое не начинается с подчеркивания, и это необходимо сделать автоматически и без обновления всех других библиотек, которые не были изменены. – Karolis
может быть что-то с bang 'gulp.src (['! Sass/_ *. Scss'])' –
Проблема заключается не в совпадении имен файлов, а с глотком, зная зависимости каждого файла. Когда частичный p1 обновляется, gulp должен знать, что lib1 зависит от этого файла, а lib2 - нет. – Karolis