Gulp Sass Watch Run仅更改和依赖项

Gulp Sass Watch Run仅更改和依赖项,sass,gulp,dependencies,gulp-watch,gulp-ruby-sass,Sass,Gulp,Dependencies,Gulp Watch,Gulp Ruby Sass,我试图弄清楚如何监视SCSS文件的更改,然后仅为那些更改(添加、删除)的文件及其依赖项(@import)运行任务(gulp ruby sass) 我的手表任务代码是: gulp.task('sass-watch', function(){ gulp.watch('dev/scss/*.scss', ['sass']); }); gulp.task('sass', function(event) { return sass('dev/scss/*.scss') .pi

我试图弄清楚如何监视SCSS文件的更改,然后仅为那些更改(添加、删除)的文件及其依赖项(@import)运行任务(gulp ruby sass)

我的手表任务代码是:

gulp.task('sass-watch', function(){
  gulp.watch('dev/scss/*.scss', ['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”任务代码是:

gulp.task('sass-watch', function(){
  gulp.watch('dev/scss/*.scss', ['sass']);
});
gulp.task('sass', function(event) {
  return sass('dev/scss/*.scss')
          .pipe(changed('dist/css'))
          .on('error', sass.logError)
          .pipe(gulp.dest('dist/css'));
});
不管怎样,Sice sass将所有文件都放在文件夹中,这不能像我希望的那样工作,但我注意到了一件有趣的事情。在我的命令行中,当保存
style2.scss
文件触发“sass watch”时,我会得到以下日志

[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\u combined.css和style2.css
,这正是依赖关系。(styl2.scss导入到样式_combined.scss)。这意味着,有些东西知道依赖关系是如何设置的。问题是,我不知道那是什么东西。我无法在其他地方获得该信息,只能在最终日志中获得。如果我可以在代码中的某个地方获得该信息,我将能够仅用于触发已更改文件和依赖项的任务

你知道会有什么东西发出这些日志吗

我试图将代码剥离到最低限度,即使我删除了“sass”任务的内容,日志仍然存在。在我从
gulp.watch
中删除
['sass']
触发器后,日志消失了