Javascript 和 ESLint 中的全局变量

我有多个 javascript 文件,我已经定义了一些全局变量在一个文件,加载之前的其他人。 因此,在第一个之后加载的所有文件都可以访问全局变量。 但是,ESLint 将全局变量显示为“未定义”。我不想改变 ESLint 的规则,我想找到一种优雅的方法来消除这些错误消息。 有线索吗? 谢谢

89285 次浏览

我不认为黑进每个文件的 ESLint 规则是一个好主意。

您应该在 .eslintrcpackage.json中定义 globals

致. eslintrc:

"globals": {
"angular": true
}

对于 package.json:

"eslintConfig": {
"globals": {
"angular": true
}
}

检查 https://eslint.org/docs/user-guide/configuring/language-options#specifying-globals

可以在每个文件或配置中添加全局变量。 如果不想更改配置,则必须在每个文件中添加已使用的全局变量。

若要使用 JavaScript 文件中的注释指定全局值,请使用以下格式:

/* global var1, var2 */

这定义了两个全局变量,var1var2。如果您想选择性地指定这些全局变量永远不应该被写入(只读) ,那么您可以用一个假标志来设置每个全局变量:

/* global var1:false, var2:false */

Http://eslint.org/docs/2.0.0/user-guide/configuring#specifying-globals