【发布时间】:2015-09-25 16:47:40
【问题描述】:
我的 gulpfile 中有以下(简化的)设置:
var gulp = require('gulp');
var jshint = require('gulp-jshint');
var jscs = require('gulp-jscs');
var watch = require('gulp-watch');
var paths = {
scripts: ['js/*.js']
}
var jscsRunner = jscs({
disallowMixedSpacesAndTabs: true // etc
});
var jshintRunner = jshint({
browser: true // etc
});
// this outputs messages from jshint no problem
gulp.task('jshint', function() {
return gulp.src(paths.scripts)
.pipe(jshintRunner)
.pipe(jshint.reporter('default'));
});
// this outputs messages from jscs no problem
gulp.task('jscs', function() {
return gulp.src(paths.scripts)
.pipe(jscsRunner);
});
// this only outputs messages from jshint
gulp.task('watch', function() {
return watch(paths.scripts)
.pipe(jscsRunner)
.pipe(jshintRunner)
.pipe(jshint.reporter('default'));
});
我的问题是 - 如前所述 - 在watch 任务中没有从jscs 生成输出,即使管道与jscs 任务中的管道基本完全相同,它按预期工作。
(我在 Windows 上运行它。)
编辑:此问题已在此处复制和讨论:https://github.com/jscs-dev/gulp-jscs/pull/66
【问题讨论】:
-
您使用的是什么 gulp-watch 版本? 2.x、3.x 和 4.x 之间存在巨大差异。
-
我真的很想知道为什么这被否决了。
-
我不确定,但可能是因为 gulp-jscs 现在supports reporters,并且使用它的方式已经改变(以及documentation)?
-
@FabrícioMatté 当然,但在 SO 上一直都是这样。问题和答案已经过时(或者,换句话说,与不再常用的版本相关)。对此投反对票的人肯定有比“这不再是问题”更好的理由。
-
没错,我只是在猜测。无论如何,投票是一个匿名的过程,它鼓励人们投票,而不需要任何特定的理由或负担。例如,当我更积极地参与/调节 SO 时,我通常会在我的零分问题上得到一些报复性的反对票。遗憾的是,由于投票是匿名的,并且不需要适当的理由,因此没有太多工作要做。
标签: gulp gulp-watch jscs