Vs Code with Es6

Vs Code with Es6

I am getting the linting error in my code 'import' is only available in ES6 (use 'esversion: 6').

Everything es6 related is throwing an error. Not sure what I have to configure to get it to work.

7 Answers

Add a file named .jshintrc to your project and inside this file type this:

{
    "esversion": 6
}

As you can see it here:

The full documentation of jshint options are found here:

5

Edit: I've added a way to enable es6 if you use ESLint instead of JSHint as well as updating the screenshots since VSCode has changed since my original answer.

JSHint Method:

If you are using JSHint, you can add the following to your settings:

"jshint.options":{
    "esversion":6
}

ESLint Method:

If you are using ESLint, you can add the following to your settings:

"eslint.options": {
    "env":{
        "es6":true
    },
    "parserOptions": {
        "ecmaVersion": 6 // or 7,8,9
    }
}

ESLint Configuration Documentation

How to update the settings

  1. Neither JSHint or ESLint are enabled in a fresh version of VS Code, so you'll need to install the extension(s) by going to extensions and then searching for your preferred linter.

  2. In VS Code, head to settings

  1. When the settings display you'll see the settings sections:

Note that there are two sections where you can customize your settings, User Settings and Workspace Settings

User Settings Is where you should apply any global settings you will want for any project you will ever work on.

Workspace Settings Is where you can make settings changes that should only be applied to your current project.

In my case, since I know that only some of my projects can use ES6, I need to have the error hinting to warn me if I'm using ES6 my non-ES6 projects...so I set this only to my Workspace Settings

But, if you know that anything you code in VS Code is going to be an ES6, project, then save a step, and add it to your user settings.

  1. Click on either User/Workspace depending on your preference. Search for JSHint or ESLint (whichever you use). Click on any of the Edit in settings.json links, it doesn't matter which one.
  1. Add the pertinent settings depending on whether you use JSHint or ESLint:

JSHint

ESLint

5

You can add "esversion": 6 to "jshint.options" in the user settings.

{
  "jshint.options": {
    "esversion": 6
  }
}
1

Just to round out the excellent suggestions already submitted, you can also set this on a file by file basis by added this escaped line (and similar for other jshint settings) to the top of your file.

// jshint esversion:6

Actually you can add it anywhere, but it only effects subsequent code, allowing you to flip settings on and off if you're desperate to do something weird.

Add the next hint before your code:

/* jshint esversion: 6 */

Example

1

Make sure, you do the above configurations with the json but also remove/disable the jshint extension for workspace if you're using eslint and vice versa.,

Disable your jshint extension like this:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Maya Lin-Takahashi
Author

Maya Lin-Takahashi

Maya is a hardware enthusiast who tests and reviews smart home devices, smartphones, wearables, and audio gear. She focuses on practical consumer value and build quality.