【问题标题】:How to Set ESVersion to 10 in Visual Studio Code?如何在 Visual Studio Code 中将 ESVersion 设置为 10?
【发布时间】:2021-06-04 05:21:23
【问题描述】:
为了使用可选的 catch 绑定,我需要使用 ES10。所以我将 Visual Studio Code 设置为 esversion: 10。但是,settings.json 一直给我一个问题“不接受值。有效值:3、5、6、7、8、9。”
JSHint 文档专门命名为 esversion 10:参见 https://jshint.com/docs/options/
有谁知道为什么 esversion 10 在 VSCode 中不被接受,甚至更好的是,如何改变它?
Settings.json 文件位于 C:\Users\AppData\Roaming\Code\User,如果您没有通过 File>Preferences>Settings 访问它。搜索“jshint”,它会给你一个在 settings.json 中编辑的链接。
【问题讨论】:
标签:
javascript
node.js
visual-studio-code
jshint
【解决方案1】:
似乎 Visual Studio Code 的 JSHint 扩展并没有随着每次 JSHint 更新而更新。例如,如果您在 settings.json 中写入 "esversion": 10(甚至是 "esversion": 15 !!!),如您所描述的,该行会收到警告,但现在像 optional catch binding 这样的代码允许!因此,尽管有警告,"esversion": 10 仍被正确理解。
因此,一种解决方案是将此警告保留在 settings.json 中,但让 JSHint 在所有其他文件中正常工作。
但是,这是我更喜欢的(解决方法,而不是解决方案):
在 settings.json 文件中保留"esversion": 9,当您碰巧需要可选的 catch 绑定 或其他一些 es10 功能时,放入此特定文件的顶部:
/* jshint esversion: 10 */
您需要输入这个额外的行,但是现在,任何地方都没有错误。此外,通过这种方式,您可以在使用任何最近的功能时看到,这些功能可能对某些用户可用。