Код VS с es6

106

Я получаю ошибку линтинга в моем коде 'import' is only available in ES6 (use 'esversion: 6').

Все, что связано с es6, выдает ошибку. Не уверен, что мне нужно настроить, чтобы заставить его работать.

erichardson30
источник

Ответы:

216

Добавьте файл с именем .jshintrcв свой проект и внутри этого файла введите следующее:

{
    "esversion": 6
}

Как вы можете видеть здесь:

введите описание изображения здесь

Полная документация по jshintопциям находится здесь: http://jshint.com/docs/options

Насреддин
источник
4
jshint.com/docs/options/#esversion для тех, кто ищет документацию.
Джереми Лартер
5
Это должно быть добавлено автоматически.
Xaqron
иногда кажется, что вам нужно добавить эту строку «moz»: true
kinsley kajiva 09
7
У меня это не сработало (vscode версии 1.37.1, OS X). Перейдите в настройки расширения -> выберите Изменить в settings.json. В JSON добавьте: "jshint.options": { "esversion": 6 } Не забудьте запятую в предыдущей строке!
sijpkes
1
Единственное место, где можно это добавить, - это ~/settings.jsonмой опыт. Настройки уровня проекта не повлияют на это. Абсурдно, что это не по умолчанию. Очень сложно понять, как это исправить, а пока пользовательский опыт работы с javascript в VS Code враждебен. Супер раздражает. По умолчанию он должен поддерживать ES6 +. Почему бы и нет?
rjurney
96

Изменить: я добавил способ включить es6, если вы используете ESLint вместо JSHint, а также обновил скриншоты, так как VSCode изменился с момента моего исходного ответа.

Метод JSHint:

Если вы используете JSHint, вы можете добавить в свои настройки следующее:

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

ESLint Метод:

Если вы используете ESLint, вы можете добавить в свои настройки следующее:

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

Документация по настройке ESLint

Как обновить настройки

  1. В VS Code перейдите в settings

Настройки кода VS

  1. Когда отобразятся настройки, вы увидите разделы настроек:

Вкладки настроек пользователя и рабочего пространства

Обратите внимание, что есть два раздела, в которых вы можете настроить свои параметры: Параметры пользователя и Параметры рабочего пространства.

Пользовательские настройки Здесь вы должны применить любые глобальные настройки, которые захотите для любого проекта, над которым вы когда-либо будете работать.

Настройки рабочего пространства Здесь вы можете вносить изменения в настройки, которые должны применяться только к вашему текущему проекту.

В моем случае, поскольку я знаю, что только некоторые из моих проектов могут использовать ES6, мне нужно иметь подсказку об ошибке, чтобы предупредить меня, если я использую ES6 для своих проектов, не относящихся к ES6 ... поэтому я установил это только для своих настроек рабочего пространства

Но если вы знаете, что все, что вы кодируете в VS Code, будет проектом ES6, сохраните шаг и добавьте его в свои пользовательские настройки .

  1. Щелкните Пользователь / Рабочее пространство в зависимости от ваших предпочтений. Найдите JSHint или ESLint (в зависимости от того, что вы используете). Щелкните любую ссылку « Изменить в settings.json» , неважно, какая именно.

Отредактируйте в settings.json

  1. Добавьте соответствующие настройки в зависимости от того, используете ли вы JSHint или ESLint:

JSHint

Добавление настройки JSHint

ESLint

Добавление настройки ESLint

Ян
источник
6
Это был отличный ответ и +1 за то, что не нужно было создавать дополнительный файл в каталогах проектов ... Скриншоты также очень полезны, большое вам спасибо!
twknab
Кроме того, это лучше, так как это можно сделать автоматически для новых проектов, вместо создания новых файлов, или просто сохранить в одной рабочей области.
Ян Сила
2
У меня почему-то не работает. Я попробовал его в обоих пользователей и рабочего пространства настройки
LondonGuy
1
Большое спасибо за подробное объяснение, это действительно очень помогло.
Кетан Рамтеке,
22

Вы можете добавить "esversion": 6в jshint.options в настройках пользователя.

{
  "jshint.options": {
    "esversion": 6
  }
}
UX Nomaan
источник
4

Чтобы завершить уже представленные отличные предложения, вы также можете установить это для каждого файла, добавив эту экранированную строку (и аналогичную для других настроек jshint) в начало файла.

// jshint esversion:6

На самом деле вы можете добавить его где угодно, но он влияет только на последующий код, позволяя вам включать и выключать настройки, если вы отчаянно хотите сделать что-то странное.

Дэвид Вудс
источник
0

Убедитесь, что вы выполняете указанные выше конфигурации с json, но также удалили / отключили jshintрасширение для рабочего пространства, если вы его используете, eslintи наоборот.,

вам
источник
-3

Отключите расширение jshint следующим образом:

https://i.stack.imgur.com/mYnM2.png

Мохаммад Надери
источник