作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我从命令行运行“gulp style”时,Gulp 运行,随后 gulp-jscs 运行,但后者似乎无法检测 jscs 配置文件 (.jscsrc) 中定义的规则。但是,如果我从命令行运行 jscs,那么 jscs 会检测配置文件的规则。知道这笔交易会是什么吗?
这是我的 gulp 文件:
(function() {
"use strict";
var gulp = require("gulp");
var jshint = require("gulp-jshint");
var jscs = require("gulp-jscs");
var jsFiles = ["*.js", "src/**/*.js"];
gulp.task("style", function () {
console.log("Running the style task.");
return gulp.src(jsFiles)
.pipe(jshint())
.pipe(jshint.reporter("jshint-stylish", {
verbose: true
}))
.pipe(jscs({configPath: "./.jscsrc"}));
});
})();
最佳答案
您需要一个reporter (就像 jshint
有一个):
var gulp = require("gulp");
var jshint = require("gulp-jshint");
var jscs = require("gulp-jscs");
var jsFiles = ["*.js", "src/**/*.js"];
gulp.task("style", function () {
console.log("Running the style task.");
return gulp.src(jsFiles)
.pipe(jshint())
.pipe(jshint.reporter("jshint-stylish", {
verbose: true
}))
.pipe(jscs({configPath: "./.jscsrc"}))
.pipe(jscs.reporter()); // << this line here
});
其他注意事项,(如果您从cmd
运行),Gulpfile.js
您不需要将其包装到匿名函数中或使用'use严格'
。
输出示例:
[13:53:30] Using gulpfile C:\del\so\gulpjscs\Gulpfile.js
[13:53:30] Starting 'style'...
Running the style task.
[13:53:31] gulp-debug: Gulpfile.js
[13:53:31] gulp-debug: index.js
[13:53:31] gulp-debug: 2 items
Comments must start with a lowercase letter at C:\del\so\gulpjscs\index.js :
1 |// Invalid
--------^
2 |// valid
3 |
1 code style error found.
[13:53:31] Finished 'style' after 187 ms
如果您不确定如何考虑当前路径./
,您可以随时使用path
模块来解析,例如:
var path = require('path');
var configPath = path.resolve(path.join(__dirname, '.jscsrc'))
关于javascript - gulp-jscs 似乎无法检测到配置(.jscsrc)文件,但普通 jscs 可以从命令行检测到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34458154/
我们有多个项目,其中包含各种 .jscsrc 文件。我想使用我定义的一个,它比大多数项目更严格。 在我的例子中是 ~/.jscsrc。 如何配置 sublime-linter 以将该文件用于 jscs
当我从命令行运行“gulp style”时,Gulp 运行,随后 gulp-jscs 运行,但后者似乎无法检测 jscs 配置文件 (.jscsrc) 中定义的规则。但是,如果我从命令行运行 jscs
我是一名优秀的程序员,十分优秀!