首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ES6未在JSBin中启用,尽管选择了“ES6/Babel”选项

ES6未在JSBin中启用,尽管选择了“ES6/Babel”选项
EN

Stack Overflow用户
提问于 2021-01-16 07:19:45
回答 1查看 756关注 0票数 4

我将JSBin中的下拉列表改为“JSBin/Babel”,但它仍然显示了ES6特性的错误。在启用ES6时,是否需要在JSBin中进行一些额外的更改?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-16 07:56:43

如果你悬停在黄色的下划线上,你会看到一个工具提示,上面写着

ES6 (使用esnext选项)或Mozilla扩展(使用moz)中都有⚠️'const‘。

不幸的是,由于某些原因,JSBin没有决定将ESNext设置为默认选项,而是自动建议将其设置为默认选项,甚至暗示在哪里可以找到上述选项。

但幸运的是,有谷歌

有一个封闭的错误报告,并进行了一些讨论,建议您可以添加其中一行

代码语言:javascript
复制
// jshint esnext: true

代码语言:javascript
复制
/* jshint esnext: true */

在你的JS顶端。

显然,在“帐户设置”“→”首选项“→”“Linting”→“jshint”中也有注册用户的帐户设置,可以添加这样的规则:

代码语言:javascript
复制
{
  "esnext": true
}

不幸的是,async仍然无法工作,因为JSHint本身抱怨说“‘异步函数’只能在ES8中使用(使用'esversion: 8‘’”。

注意,通过选择选项卡“ES6 /Babel”,可以告诉JSBin将ES6代码转到更低的版本(可能是ES5.1)。如果您的代码有“错误”,即使用不在ES6中的语法,而是使用更高的版本,那么它就不能传输。只需选择“JavaScript”而不是“ES6/Babel”即可直接运行JS代码。尽管linter显示出了一些错误,但它还是可以工作的。

以下是一些你可以尝试的东西:

  1. 尝试在帐户设置中使用该esversion选项,即 { "esnext":true,"esversion":8} 我没有让注释变体起作用,而且这个帐户选项也不太可能起作用。似乎是esversion
  2. 尝试在帐户设置中使用不同的链接,例如ESLint (如果可能的话)。JSHint以前有过各种各样的bug,并且在采用最新的ECMAScript标准方面进展缓慢。
  3. 使用比JSBin更友好、更现代的东西。
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65747332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档