Gulp Watch 启动但不编译



当使用"吞咽手表";,gulp进程启动但不编译。它没有输出任何错误,所以我不确定为什么它启动但没有编译任何文件。这就是我的gull文件当前的样子:

const gulp = require('gulp');
const stylus = require('gulp-stylus');
const nib = require('nib');
const rupture = require('rupture');
const sourcemaps = require('gulp-sourcemaps');
const postcss = require('gulp-postcss');
const autoprefixer = require('autoprefixer');
//const concat = require('gulp-concat');
// compiles styl to css and creates updates source map
gulp.task('styles', function(){
gulp.src('css/styl/style.styl')
.pipe(sourcemaps.init()) // <-- place sourcemaps.init before stylus nib pipe so that nib is included in sourcemap
.pipe(stylus({
use: [nib(),rupture()]
}))
.pipe(postcss([ autoprefixer() ]))
//.pipe(concat('style.css'))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('./css'));
});
gulp.task('watch', function(){
gulp.watch('css/**/*.styl', gulp.series('styles'));
});

按照目前的编写方式,它只会在更改时编译,而不会在启动时编译。您想要的是使watch-任务依赖于styles任务,以便styles在开始观看之前运行。您可以通过如下方式将另一个参数传递给gulp.task来实现这一点。

gulp.task('watch', ['styles'] function() {
gulp.watch('css/**/*.styl', gulp.series('styles'));
});

最新更新