这是我在使用const时遇到的错误:
<error line="2" column="1" severity="warning" message="'const' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />
我的代码如下所示:
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
代码工作正常只有JSHint每次都警告我。
答案 0 :(得分:435)
当依赖于const
等ECMAScript 6功能时,您应该设置此选项,以便JSHint不会引发不必要的警告。
/ * jshint esnext:true * / (编辑2015.12.29 :更新语法以反映@Olga's comments)
/*jshint esversion: 6 */
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
顾名思义,此选项告诉JSHint您的代码使用ECMAScript 6特定语法。 http://jshint.com/docs/options/#esversion
修改2017.06.11 :添加了基于this answer的其他选项。
虽然内联配置适用于单个文件,但您也可以通过在项目的根目录中创建.jshintrc
文件并将其添加到整个项目中来启用此设置。
{
"esversion": 6
}
答案 1 :(得分:244)
您可以在应用的 root 中添加名为 .jshintrc 的文件,其中包含以下内容,以便为整个解决方案应用此设置强>:
{
"esversion": 6
}
James' answer建议您为每个文件添加评论/*jshint esversion: 6 */
,但如果您需要控制多个文件,则需要做的工作量超过必要。
答案 2 :(得分:34)
使用导出语句时,我收到了同样的警告。我正在使用VS Code并使用类似于Wenlong Jiang的解决方案。
"jshint.options": {}
(编辑)指定"esversion"
或将此代码段复制到用户设置:
"jshint.options": {
"esversion": 6,
}
如果要为编辑器配置全局jshint设置,则无需创建.jshintrc
文件
答案 3 :(得分:31)
答案 4 :(得分:24)
如果你正在使用VSCode:
<强> 1 强>
cmd + ,
)jshint.options
"esversion": 6
添加到选项对象。<强> 2 强>
或者只是将其添加到您的用户设置:
"jshint.options": {
"esversion": 6
}
[更新]新的vscode设置
cmd + ,
)jshint
2.
答案 5 :(得分:16)
答案 6 :(得分:3)
在 root 目录中创建.jshintrc
文件,并在其中添加最新的js版本:"esversion": 9
和asi版本:"asi": true
(这将有助于您避免使用分号)
{
"esversion": 9,
"asi": true
}
答案 7 :(得分:2)
开始使用ECMAScript 6时,IDE会引发此错误。
有两个选项:
如果只有一个文件并且要使用es6,则只需在文件顶部添加以下行即可。
/*jshint esversion: 6 */
或者如果您有许多js文件,或者您正在使用任何框架(例如nodejs express),则可以在根目录中创建一个名为.jshintrc
的新文件,然后在文件中添加以下代码:
{
"esversion": 6
}
如果要对每个项目使用es6版本以上,则可以配置IDE。
答案 8 :(得分:1)
如果您正在使用Webstorm,并且没有自己的配置文件,则只需在[p]中的“放宽”选项中启用EcmaScript.next
设置|语言和框架| JavaScript |代码质量工具| JSHint
答案 9 :(得分:1)
如果使用Grunt配置,则需要执行以下步骤
Jshint中的警告消息:
解决方案:
{ "esversion": 6 }
配置完成后,再次运行它将跳过警告,
答案 10 :(得分:0)
在package.json中,您可以告诉Jshint这样使用es6
"jshintConfig":{
"esversion": 6
}
答案 11 :(得分:0)
对于Mac上的SublimeText 3:
# .jshintrc
{
"esversion": 6
}
// SublimeLinter Settings - User
{
"linters": {
"jshint": {
"args": ["--config", "/Users/[your_username]/.jshintrc"]
}
}
}
答案 12 :(得分:0)
2020年5月,这是我找到的一个简单解决方案,如果您的项目位于c:目录中,请在Windows上为我的所有项目解决,创建新文件.jshintrc并将其保存在C目录中,打开此.jshintrc文件,然后写{ "esversion": 6}
就是这样。警告应该消失,同样可以在d目录中工作
答案 13 :(得分:0)
使用以下内容创建一个名为jshint_opts的文件: { &#34; esversion&#34;:6 }
然后使用类似命令行的方式调用jshint:
jshint --config jshint_opts lib / * .js
答案 14 :(得分:0)
要在Dreamweaver CC 2018中解决此问题,我去了 首选项, 编辑规则集-选择JS, 编辑/应用更改, 找到“ esnext”并将错误设置更改为true。 经过数小时的研究,它对我有用。希望对别人有帮助。
答案 15 :(得分:0)
创建 .jshintrc
文件没有必要。
如果您使用的是 ECMAScript 6,那么您需要做的就是告诉 JSHint:
答案 16 :(得分:-1)
如果使用Sublime Text 3:
答案 17 :(得分:-2)
在新版Dreamweaver中解决此错误
以及go-to js Edit规则集 和过去
“ jshintConfig”:{ “ esversion”:6 }