我有多个 javascript 文件,我在一个文件中定义了一些全局变量,该变量先于其他文件加载。 因此,所有在第一个文件之后加载的文件都可以访问全局变量。 然而,ESLint 将全局变量显示为“未定义”。我不想更改 ESLint 的规则,我想找到一种优雅的方式来摆脱这些错误消息。 有什么线索吗? 谢谢
我不认为针对每个文件修改 ESLint 规则是个好主意。
您应该在
globals
或.eslintrc
中定义package.json
。
对于.eslintrc:
"globals": {
"angular": true
}
对于
package.json
:
"eslintConfig": {
"globals": {
"angular": true
}
}
检查https://eslint.org/docs/user-guide/configuring/language-options#specifying-globals
您可以为每个文件或在您的配置中添加全局变量。 如果您不想更改配置,则必须在每个文件中添加使用的全局变量。
来自 Specifying globals ESLint 文档部分:
要在 JavaScript 文件中使用注释指定全局变量,请使用以下格式:
/* global var1, var2 */
这定义了两个全局变量,
和var1
。如果你想有选择地指定这些全局变量可以被写入(而不是只被读取),那么你可以为每个变量设置一个带有“可写”标志的:var2
/* global var1:writable, var2:writable */
旧版本的 ESLint 使用
var1:false
来表示 var1
应该是只读的。