问题
jslint can check indent by run 'jslint --indent 4 test.js', but I don't get it work in jshint. I do it as the follow steps.
- install jshint through "npm install -g jshint"
- edit ~/.jshintrc, my jshintrc looks like
{..., "indent":4, "white":false, ...}
- edit js file test.js
/jshint indent:4/ var condition, doSth; if (condition) doSth(); // expected to be invalid
- run jshint test.js, but the indent checking is not working. The 2 spaces started line can pass the check.
回答1:
It's a version problem. I use 2.5.0 while 2.4 works.
Take a look at https://github.com/jshint/jshint/releases/tag/2.5.0:
We decided to label it 2.5.0 because—while it's backwards compatible—there are a few major changes.
The following options were removed: nomen, onevar, passfail, white, gcl, smarttabs, trailing. In addition to that, indent no longer provides warnings about indentation levels. You can still use it to set your tab-width but it will be used only for character locations in other warnings. JSHint won't error if you have these options in your config or your files; it will simply ignore them.
Thanks to our contributors, we fixed a lot of bugs in our parser. We also improved our ES6 support by adding basic support for template literals.
来源:https://stackoverflow.com/questions/23097316/how-can-i-make-jshint-indent-options-work