似乎有问题的更改实际上允许您在每个文件的基础上指定覆盖选项.您可以overrides向配置添加属性,其值应为对象.此对象的键被视为正则表达式,对其测试文件名.如果要分析的文件的名称与overrides正则表达式匹配,则为该覆盖指定的选项将应用于该文件:
在cli.js您链接到的提交中的测试文件diff中有一个这样的示例:
{
"asi": true,
"overrides": {
"bar.js$": {
"asi": false
}
}
}
Run Code Online (Sandbox Code Playgroud)
在该示例中,存在单个覆盖,其将应用于与bar.js$正则表达式匹配的任何文件(看起来有点疏忽,因为.它将匹配任何字符并且可能仅旨在匹配文字.字符).
说了这么多,看起来overrides房产不会对你有所帮助.我认为你真正想要的是.jshintrc目录中的新文件.JSHint从正在分析的文件的目录中查找该文件,然后向上移动目录树,直到找到它为止.无论它首先找到的是使用它的那个.来自文档:
如果是
.jshintrc,JSHint将开始在与正在被linted的文件相同的目录中查找此文件.如果未找到,它将在目录树中向上移动一级到文件系统根目录.
一个常见的用例是为应用程序代码和测试代码提供单独的JSHint配置.这允许您分别定义不同的环境和全局变量.