如何设置.eslintrc 识别'require'?
How to set .eslintrc to recognize 'require'?
我是 ESLint, and I have successfully integrated ESLint with IntelliJ 的新手。
开箱即用,我的 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
识别 require()
的基本问题的解决方案。特别是,我发现了一个可能的提示 here,它建议在(我推测的).eslintrc
文件中添加 "amd":false
- 但不行。
这看起来很基本。如何让 .eslintrc
识别 require()
?
(如果在您的回答中,您可以提供有关如何涵盖更一般情况的见解,那也会有所帮助。谢谢!)
将 amd
添加到 .eslintrc
内的 env
将使您能够根据 amd
规范使用 define()
和 require()
:
{
"env": {
"amd": true
}
}
问题不在于 ESLint。如果您仔细查看您的消息,它会显示 JSHint.
由于您正在尝试配置 ESLint,最简单的解决方案是从您的 IDE.
中禁用或删除 JSHint 插件
如果您仍想将 JSHint 与 ESLint 一起使用,您可以执行以下操作:
单文件解决方案:在文件顶部添加 /* global require */
。
所有文件的通用解决方案:将 "node": true
行添加到 .jshintrc
.
"amd":在 env 中为真
根据 amd 规范将 require() 和 define() 定义为全局变量。
见http://eslint.org/docs/user-guide/configuring#specifying-environments
关于 Mac ... 全局 解决方案。 (2021)
如果您在 Mac、
上在令人惊叹的 VS Code 中使用令人惊叹的 ESLint
只需转到~
(即/users/your-name
)
编辑.eslintrc.json
(当然你可以在VSCode中编辑!)
您可能会添加
"node": true
如果您使用的是节点,或者可能是此处答案中所述的“amd”。 (“amd”专门给出了要求和定义)。
这是您打开的所有工作区的全局解决方案。
重要的是,如果您“远程”使用 VS Code,因此,没有工作区,这也有效。例如,您可以仅使用 sftp 打开服务器上的文件,然后在 VSCode 中处理该文件。或者您可能只在 Mac 上打开一个本地文件,而不是工作区的一部分。在这两种情况下,设置(例如,node=true)实际上都有效 - 它不需要是工作区。
我是 ESLint, and I have successfully integrated ESLint with IntelliJ 的新手。
开箱即用,我的 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
识别 require()
的基本问题的解决方案。特别是,我发现了一个可能的提示 here,它建议在(我推测的).eslintrc
文件中添加 "amd":false
- 但不行。
这看起来很基本。如何让 .eslintrc
识别 require()
?
(如果在您的回答中,您可以提供有关如何涵盖更一般情况的见解,那也会有所帮助。谢谢!)
将 amd
添加到 .eslintrc
内的 env
将使您能够根据 amd
规范使用 define()
和 require()
:
{
"env": {
"amd": true
}
}
问题不在于 ESLint。如果您仔细查看您的消息,它会显示 JSHint.
由于您正在尝试配置 ESLint,最简单的解决方案是从您的 IDE.
中禁用或删除 JSHint 插件如果您仍想将 JSHint 与 ESLint 一起使用,您可以执行以下操作:
单文件解决方案:在文件顶部添加 /* global require */
。
所有文件的通用解决方案:将 "node": true
行添加到 .jshintrc
.
"amd":在 env 中为真 根据 amd 规范将 require() 和 define() 定义为全局变量。
见http://eslint.org/docs/user-guide/configuring#specifying-environments
关于 Mac ... 全局 解决方案。 (2021)
如果您在 Mac、
上在令人惊叹的 VS Code 中使用令人惊叹的 ESLint只需转到~
(即/users/your-name
)
编辑.eslintrc.json
(当然你可以在VSCode中编辑!)
您可能会添加
"node": true
如果您使用的是节点,或者可能是此处答案中所述的“amd”。 (“amd”专门给出了要求和定义)。
这是您打开的所有工作区的全局解决方案。
重要的是,如果您“远程”使用 VS Code,因此,没有工作区,这也有效。例如,您可以仅使用 sftp 打开服务器上的文件,然后在 VSCode 中处理该文件。或者您可能只在 Mac 上打开一个本地文件,而不是工作区的一部分。在这两种情况下,设置(例如,node=true)实际上都有效 - 它不需要是工作区。