Visual studio code 有没有办法在vscode中启用ES6/ES7语法支持?

Visual studio code 有没有办法在vscode中启用ES6/ES7语法支持?,visual-studio-code,Visual Studio Code,编辑3:从版本0.4.0开始,可以通过向项目文件夹添加jsconfig.json文件来打开ES6语法,该文件包含以下内容: { "compilerOptions": { "target": "ES6" } } 编辑2:您可以在用户语音上使用此功能 有没有办法在VisualStudio代码中“打开”ES6/ES7 编辑1 尝试@sarvesh的建议-覆盖javascript.validate.target并重新启动vscode。没有帮助。目前,使用ES6和E

编辑3:从版本0.4.0开始,可以通过向项目文件夹添加
jsconfig.json
文件来打开ES6语法,该文件包含以下内容:

{
    "compilerOptions": {
        "target": "ES6"
    }
}

编辑2:您可以在用户语音上使用此功能


有没有办法在VisualStudio代码中“打开”ES6/ES7

编辑1


尝试@sarvesh的建议-覆盖
javascript.validate.target
并重新启动vscode。没有帮助。

目前,使用ES6和ES7功能的唯一方法是使用


另一方面,您可以看到ES6和ES7有一个功能请求。这很简单,在项目的根目录下创建一个jsconfig.json文件并在其中写入此对象:

{
    "compilerOptions": {
        "target": "ES6",
        "module": "commonjs"
    }
}

否则,您可以使用ESLint突出显示ES7错误(使用babel解析器或其他工具):

添加到上述答案中

根据VS代码的文件

确保将jsconfig.json放在JavaScript项目的根目录下,而不仅仅是工作区的根目录下。下面是一个jsconfig.json文件,它将JavaScript目标定义为ES6,exclude属性不包括node_modules文件夹

{
    "compilerOptions": {
        "target": "ES6"
    },
    "exclude": [
        "node_modules"
    ]
}
下面是一个具有显式文件属性的示例

{
    "compilerOptions": {
        "target": "ES6"
    },
    "files": [
        "src/app.js"
    ]
}
“文件”属性不能与“排除”属性一起使用。如果两者都指定,则“文件”属性优先

还可以尝试编辑tsconfig.json中的“target”属性

{
  "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"
  ]
}

或者,您可以使用Flow而不是Typescript,后者更易于设置和迁移到。我写了一篇关于的小文章。

这很有帮助。将jsconfig.json文件添加到项目中没有多大帮助,或者说这不是最好的解决方案。转到文件>首选项>设置。在settings.json文件中添加以下行:

"jshint.options": { "esversion": 6 }
此外,您还可以通过在项目的根目录中创建
.jshintrc
文件并添加此内容,为整个项目启用此设置

{
  "esversion": 6
}

截至目前,根据VSCode市场上的文档,在项目根目录中包含一个.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_模块中通过npm安装了eslint,我所知道的是,在项目根文件夹ES6 linting中有.eslintrc可以工作,没有它就不能工作


希望这有助于……

更加方便。在文件夹中设置jsconfig.json

{
“编译器选项”:{
“目标”:“esnext”
}
}

Update:lookes ES6将于2015年7月开始提供-看起来不错。不过,总的来说还有很多工作要做。我正在使用最新版本
0.8.0
我仍然看到胖箭头函数的错误着色。。。为什么?@vanthome您需要指出要使用es6编写的文件数组,请检查链接:@TionXP您是指使用
jsconfig.json
的方法吗?我没有尝试过,但我希望如果我在全球范围内启用它,它会起作用。我不想一个文件一个文件地告诉VSCode我想使用ES6。你介意把它作为你问题的答案而不是编辑吗?很好,谢谢!显然,他们在今年夏天的vscode中包含了这一点:因此上面的答案不再正确。添加
“experimentalDecorators”:对于es7装饰程序来说是真的
,那么ES6导入呢?调试/断点是否有效?似乎不适用于
“模块”:“es2015”
。这对我来说不适用。我有一个问题,这意味着什么:“在JavaScript项目的根目录下,而不仅仅是在工作区的根目录下”?为什么vs code不能只拾取
。babelrc
等?为什么所有的配置都是重复的?格鲁布尔