这段代码出了什么问题:
var gulp = require('gulp');
var watch = require('gulp-watch');
var connect = require('gulp-connect');
var jshint = require('gulp-jshint');
var stylish = require('jshint-stylish');
//lint
module.exports = gulp.task('lint', function () {
return gulp.src([config.paths.src.scripts,config.paths.exclude.bower])
.pipe(jshint())
.pipe(jshint.reporter(stylish));
});
//watch
module.exports = gulp.task('watch', function () {
watch(config.paths.src.scripts, ['lint'])
.pipe(connect.reload());
watch(config.paths.src.templates, ['templates'])
.pipe(connect.reload());
watch(config.paths.src.index)
.pipe(connect.reload());
});
当我编辑一个js文件时发生错误 jshint什么也没给我看。
这有效:
watch(config.paths.src.scripts)
.pipe(jshint())
.pipe(jshint.reporter(stylish))
.pipe(connect.reload());
但它是否完全相同?
答案 0 :(得分:1)
gulp-watch不支持像内部gulp.watch这样的任务名称数组。请参阅https://www.npmjs.org/package/gulp-watch
上的文档你必须提供gulp-watch一个功能,比如
watch(config.paths.src.scripts, function(events, done) {
gulp.start(['lint'], done);
}
注意:似乎gulp.start将在Gulp 4.x中弃用,它将被名为bach的任务运行程序取代:https://github.com/floatdrop/gulp-watch/issues/92