这就是问题所在:我在 Grunt 中使用 JSHint。我有几个 JS 文件,最后它们会合并到一个文件中。但在合并之前,我想运行 JSHint。然而,JSHint 抱怨一些未定义的变量。下面是一个例子: 1. JavaScript/file_one.js 定义了一个变量: var Foo = (function (){}()); 2. JavaScript/file_two.js 使用该模块。新的富()。
jshint: {
files: ['Gruntfile.js',
'javascript/**/*.js',
],
options: {
// some options.
}
}
JSHint 抱怨 Foo 没有在 file_two.js 中定义。
以下是我的目标(如果可能): 1. 我想将代码放在单独的文件中。因此,某些变量可能在不同的文件中定义。2. 我想让 JSHint 检查原始 JS 文件。我不想将所有 JS 文件合并为一个并让 JSHint 检查合并后的文件。3. JSHint 可以检查 <%= jshint.files %> 中的所有文件(例如javascript/**/*.js)并查找定义。
我知道一种解决方法是将 Foo 作为全局选项,如这篇文章如何告诉 JSLint / JSHint 已经定义了哪些全局变量。但我不想把我定义的变量放在那里,因为每个这样的变量都在我的源文件中。
所以我的问题是是否有办法实现我的目标 3 告诉 JSHint 在其他文件中查找定义。