ES6 / ES7 support in Visual Studio 2015 Community

30,175

Solution 1

Javascript is a language. ES6 is a version of Javascript. Microsoft has not supplied a intellisense mapping file for it. The suggestions on this post suggest using javascript frameworks/APIs which do provide intellisense mapping files. These suggestions do not answer the question on how to stop getting intellisense errors for new Javascript versions. Unless someone creates that mapping file and provides a URL for us to reference from Visual Studio/tools/Javascript/Intellisence/references you will get syntax errors writing straight ES6 Javascript.

Solution 2

For using the new ES6/ES7 syntax you have to use a transpiler. You have three options Traceur, Babel or TypeScript. These will transpile the new syntax to the current ES5 syntax which the current browsers support. Aurelia has good support for Babel or TypeScript.

Visual Studio 2015 includes TypeScript 1.5. So you have to create a TypeScript file (.ts) instead of a Javascript file (.js). TypeScript will transpile this to a ES5 .js file. The .js file is the one that runs in the browser.

When you open a Javascript file in Visual Studio it will handle this as a ES5 Javascript file and not as a ES6/ES7 Javascript file, so if you want to use Babel then you get syntax errors in the editor.

Solution 3

enter image description here

I think the issue is the nodeJS project template. I have created an empty web project and used git bash to run my jspm commands. When I add a js file I still get a couple of syntax issues but it recognizes most of the new syntax.

Solution 4

The best thing I can suggest is the

WebCompiler. Its the most easy and beautiful way to write ES6 or LESS or TypeScript etc.

The easiest and most powerful way to compile LESS, Scss, JSX and CoffeeScript files directly within Visual Studio or through MSBuild.

Share:
30,175
Marek M.
Author by

Marek M.

Updated on July 09, 2022

Comments

  • Marek M.
    Marek M. almost 2 years

    I'm hearing that VS 2015 is supporting the new js syntax but when I open up a project written using aurelia.js in this IDE intellisense complains about many, many things eg.

    export class UpperValueConverter {
      toView(value){
        return value && value.toUpperCase();
      }
    }
    

    I have the WebEssentials 2015 installed. Still nothing seems to work... Probably an important information is that my current VS installation is a fresh one, so I didn't mess up any settings.