Javascript 如何将.eslintrc设置为识别';需要';?
我是新手,并且已成功地将ESLint与集成 开箱即用,我对ESLint的集成无法识别Javascript 如何将.eslintrc设置为识别';需要';?,javascript,intellij-idea,eslint,jshint,lint,Javascript,Intellij Idea,Eslint,Jshint,Lint,我是新手,并且已成功地将ESLint与集成 开箱即用,我对ESLint的集成无法识别节点,但对文档的基本审查表明,通过在我的项目文件夹根目录下创建名为.eslintrc的配置文件(使用适当的IntelliJ设置访问此文件)并设置“节点”:true,ESLint识别节点(即,以下完整的。eslintrc工作) 但是,ESLint仍然无法识别require(),此屏幕截图证明了这一点: require()“> 我已经在合理的时间内尽了最大努力,寻找如何让ESLint识别require()这一基本问题
节点
,但对文档的基本审查表明,通过在我的项目文件夹根目录下创建名为.eslintrc
的配置文件(使用适当的IntelliJ设置访问此文件)并设置“节点”:true
,ESLint识别节点
(即,以下完整的。eslintrc
工作)
但是,ESLint仍然无法识别require()
,此屏幕截图证明了这一点:
require()“>
我已经在合理的时间内尽了最大努力,寻找如何让ESLint
识别require()
这一基本问题的解决方案。特别是,我发现了一个可能的提示,其中建议在.eslintrc
文件中添加“amd”:false
,但没有办法
这似乎很基本。如何让.eslintrc
识别require()
(如果在您的回答中,您能够深入了解如何涵盖更一般的情况,这也会很有帮助。谢谢!)将
amd
添加到env
内部。eslintrc
将使您能够按照amd
规范使用define()
和require()
:
{
“环境”:{
“amd”:真的吗
}
}
问题不在于ESLint。如果仔细查看消息,它会显示JSHint
由于您试图配置ESLint,最简单的解决方案是从IDE中禁用或删除JSHint插件
如果仍然希望将JSHint与ESLint一起使用,可以执行以下操作:
单文件解决方案:在文件顶部添加/*global require*/
所有文件的通用解决方案:将行添加到.jshintrc“amd”:在环境中为true
根据amd规范将require()和define()定义为全局变量
请参见关于Mac…全球解决方案。(2021年)
如果您在Mac上的惊人VS代码中使用惊人的ESLint
只需转到~
(即/users/your name
)
编辑.eslintrc.json
(当然可以在VSCode中编辑它!)
你可能会加上
"node": true
如果您使用的是node,或者可能是此处答案中所述的“amd”(“amd”给出了具体的要求和定义)
这是适用于您打开的所有工作区的全局解决方案
重要的是,如果您“远程”使用VS代码,也可以这样做,因此没有工作区。例如,您可以仅使用sftp在服务器上打开一个文件,然后在VSCode中处理该文件。或者您可能只在Mac上打开一个本地文件,而不是工作区的一部分。在这两种情况下,设置(例如,node=true)实际上会工作的-它不需要是一个工作区。嗯。我试着将“amd”:true
添加到我的.eslintrc
文件中,但不可以。我会再处理一些。添加后你重新启动了sublime吗?(讨厌问)“env”:{“amd”:true}@NickAvi为什么你会认为OP使用的是Sublime?他们清楚地说它是IntellJ,更不用说界面本身看起来一点也不像Sublime。呸,我离开了图片,我认为它看起来像Sublimithanks!只是在我的潜意识里,这些是不同的。你会马上有一个关于哪个“更好”的建议吗?JSHint、ESLint……或者两者都使用有益吗?对于任何感兴趣的人来说,这里有一个链接,可以比较JSLint
、JSHint
、JSCS
、和ESLint
:-从这个链接中,我将使用ESLint
。很难说。对于我写的一点JS(我现在主要使用的是打字脚本),我仍然使用JSHint,因为在我使用纯JS的时候ESLint并不存在。正如,两者并没有更好的区别。您应该考虑的是:ESLint完全支持ES6,这一点我无法为JSHint确认。ESLint还支持很多代码样式规则(类似于JSC)JSHint明确地删除了这些规则,并建议使用JSC进行这些检查,这是有道理的,但您需要使用两个工具。如果您计划编写ES6代码,ESLint可能是一个更好的选择,因为从我在快速谷歌查询中了解到的情况来看,JSHint仍然不能提供很好的支持——我可能在这方面错了。这是错误的强迫您使用一些基本的代码样式也很好,但如果您关心的话,仍然没有添加JSC附带的所有复杂规则。如果我今天选择ESLint,我可能会选择它,因为它更为最新,更适合我的用例。很抱歉这些冗长的评论,我希望这将有助于您选择您的lint工具。关于ESLint和ES6支持的问题,我同意您的意见,特别是考虑到lint站点上的这句话:“ES6的一些功能很好,所以JSLint会识别ES6的好部分。”
"node": true