Gulp Sass Watch Run только изменились и зависимости
Я пытаюсь выяснить, как отслеживать файлы SCSS на предмет изменений и затем запускать задачу (gulp-ruby-sass) только для тех, которые изменились (добавлены, удалены) и их зависимостей (@import).
Мой код задачи часов:
gulp.task('sass-watch', function(){
gulp.watch('dev/scss/*.scss', ['sass']);
});
Мой "sass" код задачи:
gulp.task('sass', function(event) {
return sass('dev/scss/*.scss')
.pipe(changed('dist/css'))
.on('error', sass.logError)
.pipe(gulp.dest('dist/css'));
});
В любом случае, sass принимает все файлы в папке, это не может работать, как я хочу, но я заметил интересную вещь. В моей командной строке я получаю следующие журналы, когда "sass-watch" запускается при сохранении style2.scss
файл.
[13:38:01] Using gulpfile C:\1HLAVNI\Lukas\Webdesign\lukasradek\gulpfile.js
[13:38:01] Starting 'sass-watch'...
[13:38:01] Finished 'sass-watch' after 42 ms
[13:38:03] Starting 'sass'...
[13:38:03] write ./\style_combined.css
[13:38:03] write ./\style2.css
[13:38:03] Finished 'sass' after 416 ms
Что-то логи write style_combined.css and style2.css
что именно таковы зависимости. (styl2.scss импортируется в style_combined.scss). Это означает, что что-то знает, как устанавливаются зависимости. Проблема в том, что я не знаю, что это такое. Я не могу получить эту информацию в другом месте, только в окончательном журнале. Если бы я мог получить эту информацию где-то в коде, я мог бы использовать для запуска задачи только для измененных файлов и зависимостей.
Есть идеи, что может испускать эти журналы?
Я попытался сократить свой код до минимума, и журналы все еще присутствуют, даже когда я удаляю содержимое задачи "sass". Логи исчезли после того, как я удалил ['sass']
вызвать из gulp.watch
,