私は新しいGulpユーザーで、簡単なスクリプトでコンパスを見てみましたが、うまくいきませんでした。しかし、gulp compass
を実行するだけで、gulpはそれをコンパイルできます。何か案は?ここに私のスクリプト:
var gulp = require('gulp'),
compass = require('gulp-compass'),
// Compass
gulp.task('compass', function() {
gulp.src('./assets/scss/*.scss')
.pipe(compass({
config_file: './config.rb',
css: './assets/css',
sass: './assets/scss'
}))
.pipe(gulp.dest('./assets/css'));
});
// Default task
gulp.task('default', function() {
gulp.start('compass');
});
// Watch
gulp.task('watch', function() {
// Watch .scss files
gulp.watch('./assets/scss/*.scss', ['compass']);
});
あなたは実際に「監視」タスクを呼び出すことを怠っています。これはgulp.watchと同じものではありません。代わりに、デフォルトのgulpタスクは次のようになります。
gulp.task('default', function() {
gulp.start('compass');
gulp.start('watch');
});
しかし、実際には次のようになります。
gulp.task('default', ['compass', 'watch']);
私が変更され gulp.watch
ソースから./assets/**/*.scss
GULP 4.Xで
関数を渡す必要があります。 gulp 4.xでこれを行う通常の方法は、1つのタスク名のみでgulp.series()
呼び出しを渡すことです。これは、指定されたタスクのみを実行する関数を返します。
gulp.task('watch', function() {
gulp.watch('./assets/scss/*.scss', gulp.series('compass'))
});