编辑3:从版本0.4.0开始,可以通过向项目文件夹添加jsconfig.json
文件来启用ES6语法,其中包含以下内容:
{
"compilerOptions": {
"target": "ES6"
}
}
编辑2:您可以vote了解用户语音的此功能
有没有办法打开"打开" Visual Studio Code中的ES6 / ES7?
修改1
尝试@ sarvesh的建议 - 覆盖javascript.validate.target
并重新启动vscode。没有帮助。
答案 0 :(得分:53)
这很简单,在项目的根目录下创建一个jsconfig.json文件并在其中写入此对象:
{
"compilerOptions": {
"target": "ES6",
"module": "commonjs"
}
}
答案 1 :(得分:31)
这link帮了很多忙。将jsconfig.json文件添加到项目中没有多大帮助,或者说它不是最佳解决方案。转到文件>偏好>设置。在settings.json文件中添加以下行:
"jshint.options": { "esversion": 6 }
答案 2 :(得分:4)
添加上述答案......
根据VS Code的文档..
确保将 jsconfig.json置于JavaScript项目的根目录而不仅仅是工作区的根目录。下面是一个jsconfig.json文件,它定义了JavaScript目标为ES6,exclude属性排除了node_modules文件夹。
{
"compilerOptions": {
"target": "ES6"
},
"exclude": [
"node_modules"
]
}
以下是具有显式文件属性的示例。
{
"compilerOptions": {
"target": "ES6"
},
"files": [
"src/app.js"
]
}
files属性不能与exclude属性一起使用。如果同时指定了两者,则files属性优先。
还尝试编辑" target" tsconfig.json中的属性
{
"compilerOptions": {
"target": "es5",//es6
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
答案 3 :(得分:1)
否则,您可以使用ESLint突出显示ES7错误(使用babel解析器或其他):VSCode Linter ES6 ES7 Babel linter
答案 4 :(得分:0)
或者,您可以使用Flow而不是Typescript,这样更容易设置和迁移到。我在how to setup Flow with VS Code上写了一篇小文章。
答案 5 :(得分:0)
截至此日期并根据VSCode Marketplace上的ESLint文档,包括项目根目录中的.eslintrc配置文件,可在ESLint VSCode扩展中启用ES6 linting。
我的.eslintrc配置文件如下所示:
extends:
- standard
parser: babel-eslint
rules:
object-curly-spacing: [ error, always ]
react/prop-types: off
space-before-function-paren: off
我在node_modules中通过npm安装了eslint,我所知道的是项目根文件夹中的.eslintrc ES6 linting有效,没有它,它没有。
希望这会有所帮助......
答案 6 :(得分:0)
如果您不想将项目另存为Workspace,则只需在项目根文件夹中创建一个.vscode
目录,然后创建一个settings.json
文件。
{
"settings": {
"jshint.options": {"esversion": 6}
}
}
添加上面的json,重新启动VSCode,您一切顺利!
答案 7 :(得分:0)
为了更方便。在您的文件夹中设置 jsconfig.json。
{
"compilerOptions": {
"target": "esnext"
}
}