JSHint:覆盖整个文件夹的单个.jshintrc选项

Sas*_*olf 27 javascript browser node.js jshint

我有一个.jshintrc在我的以下配置项目的根目录:

{
  "node": true,
  "smarttabs": true,
  "undef": true,
  "unused": true
}
Run Code Online (Sandbox Code Playgroud)

这适用于我在项目中与节点相关的所有内容,但不适用于与浏览器相关的脚本.哪些是坐在子文件夹中.
是否可以node在保留整个文件夹的其他选项的同时覆盖该选项?

如果我.jshintrc为浏览器端文件夹创建另一个文件,我必须再次告诉JSHint我的所有配置,尽管我实际上只是想取消设置该node选项.

我知道我可以在每个文件中设置此选项,但实际上我想避免这种情况.

提前谢谢了!

fer*_*sik 41

是的,jshint v2.5.1中有一个"扩展"的功能,对于你的例子,这可能是这样的:

/.jshintrc

{
  "smarttabs": true,
  "undef": true,
  "unused": true
}
Run Code Online (Sandbox Code Playgroud)

/server/.jshintrc

{
  "extends": "../.jshintrc",
  "node": true
}
Run Code Online (Sandbox Code Playgroud)

/client/.jshintrc

{
  "extends": "../.jshintrc",
  "browser": true
}
Run Code Online (Sandbox Code Playgroud)

您可以在此处阅读有关此功能的更多信息:https: //github.com/jshint/jshint/releases/tag/2.5.1

  • 哇,你认真地复活了这个问题?不过谢谢你的回答,我相信我将来会用它. (5认同)
  • 这个功能摇滚!请记住更新jshint! (3认同)