IntelliJ JSHint esversion 选项

Posted

技术标签:

【中文标题】IntelliJ JSHint esversion 选项【英文标题】:IntelliJ JSHint esversion option 【发布时间】:2016-05-04 15:09:03 【问题描述】:

根据 JSHint 文档,esnext 选项将很快被弃用:

esnext: 警告 此选项已被弃用,并将在 JSHint 的下一个主要版本中删除。改用 esversion: 6。

但是,IntelliJ 似乎无法识别选项“esversion”,使用时会显示与 ES6 语法相关的警告(当我改用 esnext:true 时不会显示这些警告)。

还有其他人遇到过这个问题吗?

【问题讨论】:

【参考方案1】:

您可以在JS文件中添加注释,如下所示:

/*jshint esversion: 6 */

const Suites = 
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
;

或者您可以在应用的根目录中添加一个名为 .jshintrc 的文件,其中包含以下内容,以将此设置应用于整个解决方案:

 "esversion": 6 

更多详情:Why does JSHint throw a warning if I am using const?

【讨论】:

【参考方案2】:

转到首选项->语言和框架-> javascript->代码质量工具-> JSHint->单击“警告与指定的ECMAScript版本不兼容”。点击“SET”,输入“6”。

【讨论】:

【参考方案3】:

我认为 IntelliJ 正在使用它自己的捆绑 jshint 版本,它可能比最新版本稍旧。我不会太担心这个。使用旧选项,直到 IntelliJ 赶上。如果它没有引起任何问题,也添加 'esversion' 标志,以防您在 IntelliJ 之外使用相同的项目(例如,从命令行运行 jshint)。

【讨论】:

本主题中的任何答案是否经过测试。我有最新的 IntelliJ 和 JSHint 2.9.4 安装(目前是最新的)。问题仍然存在。

以上是关于IntelliJ JSHint esversion 选项的主要内容,如果未能解决你的问题,请参考以下文章

Vue项目中提示JSHint: import is only available in ES6 (use esversion: 6)解决

JSHint 是不是支持异步/等待?

我的 vim 中的 JSHint 将 'yield' 标记为警告。

在我创建的所有新项目中,我无法修复 vscode 的 JSHint 插件中的“let”警告

vue学习:解决Apycharm的 * is only available in ES6(use 'esversion: 6') 问题

如何忽略 '$' 未定义 JsHint 错误。 (Visual Studio 2010 JsHint 扩展)