Gulp watch sass导致终端挂起 - 这就是重点吗?

时间:2014-01-27 17:21:24

标签: terminal gulp

所以我只是把手弄脏了Gulp。我从未与Grunt合作,但似乎Gulp是新的大事。一切似乎都很好。我已使用以下gulpfile.js成功将SCSS编译为CSS:

// Include gulp
var gulp = require('gulp'); 

// Include Our Plugins
var sass = require('gulp-sass');
var rename = require('gulp-rename');


// Compile Our Sass
gulp.task('sass', function() {
    return gulp.src('./scss/*.scss')
        .pipe(sass())
        .pipe(gulp.dest('./css'));
});

// Rerun the task when a file changes
gulp.task('watch', function () {
  gulp.watch('scss/**/*.scss', ['sass']);
});

// Default Task
gulp.task('default', ['sass', 'watch']);

事情是:当我在终端中运行Gulp默认时,它会启动脚本,但永远不会结束它。我假设这是重点,为了让Gulp观看我的文件 - 它必须继续运行。

它处于待机状态:

[gulp] Running 'sass'...
[gulp] Finished 'sass' in 8.47 ms

如果是这种情况 - 如何在不关闭并重新打开终端的情况下阻止它运行?如果这很简单,我很抱歉,但我对终端机构一无所知。

1 个答案:

答案 0 :(得分:8)

gulp watch旨在观察文件的变化,它可以作为一个运行过程。

自述文件显示了其用法示例:gulp-watch

命令: Ctrl + C 将停止该过程。

一旦开始修改watch指令中的任何文件,将触发重新加载中的操作。您当前对手表没有任何操作,这将在sass文件更改时触发操作:

gulp.watch('./scss/**/*.scss', ['sass']);