如何设置. eslintrc 来识别“需求”?

我是 埃斯林特的新手,我已经成功地将 ESLint 与 情报集成在一起。

开箱即用,我的 ESLint 集成不识别 node,但是对文档的基本回顾清楚地表明,通过在我的项目文件夹的根目录中创建名为 .eslintrc的配置文件(使用适当的 IntelliJ 设置来访问该文件)并设置 "node":true,ESLint 识别 node(即,下面完整的 .eslintrc工作)。

// Contents of .eslintrc at root of project - support for Node and jQuery
{
"env" : {
"node" : true,
"jquery" : true
},
}

然而,ESLint 仍然不能识别 require(),如下面的截图所示:

ESLint does not recognize <code>require()</code>

我已经在合理的时间内尽了最大的努力寻找一个解决方案,如何让 ESLint识别 require()的基本问题。特别是,我发现了一个可能的提示 给你,其中建议在(我推测) .eslintrc文件中添加 "amd":false-但没有去。

这似乎很基本。我怎样才能让 .eslintrc识别 require()

(如果在你的回答中,你可以提供如何涵盖更一般情况的见解,这也将是有帮助的。谢谢!)

38809 次浏览

.eslintrc中将 amd添加到 env将使您能够使用 define()require(),根据 amd规范:

{
"env": {
"amd": true
}
}

问题不在于 ESLint,如果仔细查看消息,它显示的是 JSHint

因为您正在尝试配置 ESLint,所以最简单的解决方案是从 IDE 中禁用或删除 JSHint 插件。

如果您仍然希望使用 JSHint 和 ESLint,可以执行以下操作:

单文件解决方案: 在文件顶部添加 /* global require */

所有文件的通用解决方案: 将 "node": true行添加到您的 .jshintrc

“ amd”: 在 < strong > env 中为真 根据 amd 规范,将 demand ()和 Definition ()定义为全局变量。

参见 http://eslint.org/docs/user-guide/configuring#specifying-environments

在 Mac 上... 全球性的解决方案(2021)

如果您正在 Mac 上使用令人惊叹的 VS Code 中的令人惊叹的 ESLint,

只需转到 ~(即 /users/your-name)

编辑 .eslintrc.json(当然你可以在 VSCode 中编辑它!)

enter image description here

你可能会加上

"node": true

如果您使用的是 node,或者如这里的答案中所述的“ amd”。(“ amd”给出了具体的和仅有的要求和定义)。

这是您打开的所有工作区的全局解决方案。

重要的是,如果您正在“远程”使用 VS 代码 所以,没有工作空间,这也可以工作。例如,您可以仅使用 sftp 在服务器上打开一个文件,然后使用 VSCode 处理该文件。或者,您可能只是在 Mac 上打开一个本地文件,而不是工作区的一部分。在这两种情况下,设置(例如 node = true)实际上都会工作-不一定是工作间。