我将indent
设置为4.如果我删除源文件中的所有缩进,JSHint就不会失败。它会检查除缩进之外的所有其他内容。如何检查缩进?
此外,我已经安装了jshint-eclipse插件,它也无法使用!
以下是我的GruntFile的摘录:
// Make sure code styles are up to par and there are no obvious mistakes
jshint: {
options: {
jshintrc: '.jshintrc',
reporter: require('jshint-stylish')
},
all: {
src: [
'Gruntfile.js',
'<%= yeoman.app %>/scripts/{,*/}*.js'
]
},
test: {
options: {
jshintrc: 'test/.jshintrc'
},
src: ['test/spec/{,*/}*.js']
}
},
我的jshint:
{
"node": true,
"browser": true,
"esnext": true,
"bitwise": true,
"camelcase": true,
"curly": true,
"eqeqeq": true,
"immed": true,
"indent": 4,
"latedef": true,
"newcap": true,
"noarg": true,
"quotmark": "single",
"regexp": true,
"undef": true,
"unused": true,
"strict": true,
"trailing": true,
"smarttabs": false,
"globals": {
"angular": false
}
}
答案 0 :(得分:1)
tl; dr:npm install grunt-contrib-jshint@0.9.2
原来这是How can I make jshint indent options work的欺骗。
没有接受的答案,但是the only answer present表明这是安装的JSHint版本的问题。 2.5.0放弃了对indent
选项和其他一些风格的支持。
当我刚刚正常安装grunt-contrib-jshint
时,我得到版本0.10.0并且遇到与OP相同的问题(因为0.10.0取决于JSHint 2.5.0);当我改为安装grunt-contrib-jshint@0.9.2
(最后一个使用JSHint 2.4.0的版本)时,我的结果会出现一堆缩进错误(正如预期的那样)。