我正在使用 Gulp 编译手写笔,但任务似乎运行了两次gulp-notify
。
这是我的 gulpfile.js
var gulp, plugins;
gulp = require('gulp');
plugins = require('gulp-load-plugins')();
/**
* Watch for changes on stylus files, when detecting change run stylus task
* @return {void}
*/
gulp.task('watch-stylus', function() {
gulp.src('./app/Resources/stylus/**/*.styl')
.pipe(plugins.plumber())
.pipe(plugins.watch('./app/Resources/stylus/**/*.styl', {
verbose: true,
readDelay: 0
}))
.pipe(plugins.exec('gulp stylus'))
.pipe(plugins.notify("Stylus compiled"))
.pipe(plugins.plumber.stop());
});
/**
* Compile stylus and auto prefix the compiled css
* @return {void}
*/
gulp.task('stylus', function() {
gulp.src(['./app/Resources/stylus/**/*.styl', '!./app/Resources/stylus/**/_*.styl'])
.pipe(plugins.plumber())
.pipe(plugins.stylus())
.pipe(plugins.autoprefixer({
browsers: ['last 2 versions'],
cascade: false
}))
.pipe(plugins.plumber.stop())
.pipe(gulp.dest('web/css'));
});
我检查过的东西
- 没有多个目标。
- 输入和输出目录不同。
我正在使用的插件
gulp-load-plugins
加载插件gulp-watch
监视文件更改gulp-notify
通知手写笔已编译gulp-stylus
编译手写笔gulp-exec
即使在编辑部分内容时也运行编译任务gulp-autoprefixer
为css添加前缀gulp-plumber
所以gulp-watch
不会因错误而死