Это ошибка, которую я получаю при использовании const:
<error line="2" column="1" severity="warning" message="'const' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />
Мой код выглядит так:
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
Код работает нормально, только JSHint предупреждает меня каждый раз.
"use esnext option"
. И почему? Разве это сообщение об ошибке не совсем ясно?const
это не стандартная JS (пока).Ответы:
Опираясь на такие функции ECMAScript 6, как
const
, например , вы должны установить эту опцию, чтобы JSHint не выдавал ненужных предупреждений./ * jshint esnext: true * /( Изменить 2015.12.29 : обновлен синтаксис, отражающий комментарии @ Ольги )Эта опция, как следует из названия, говорит JSHint, что ваш код использует специальный синтаксис ECMAScript 6. http://jshint.com/docs/options/#esversion
Изменить 2017.06.11 : добавлена еще одна опция, основанная на этом ответе .
Хотя встроенная конфигурация хорошо работает для отдельного файла, вы также можете включить этот параметр для всего проекта, создав
.jshintrc
файл в корне вашего проекта и добавив его туда.источник
Warning This option has been deprecated and will be removed in the next major release of JSHint. Use esversion: 6 instead.
хотя мой встроенный плагин Webstorm не распознает новую опцию. Я закончил тем, что указал оба.Вы можете добавить файл с именем .jshintrc в корень вашего приложения со следующим содержимым, чтобы применить этот параметр для всего решения :
Ответ Джеймса предполагает, что вы можете добавить комментарий
/*jshint esversion: 6 */
для каждого файла, но это больше, чем необходимо, если вам нужно контролировать много файлов.источник
.jshintrc
.JSHint will start looking for this file in the same directory as the file that's being linted. If not found, it will move one level up the directory tree all the way up to the filesystem root. (Note that if the input comes from stdin, JSHint doesn't attempt to find a configuration file)
Я получил это же предупреждение при использовании оператора экспорта. Я использую VS Code и использовал аналогичный подход к решению Wenlong Jiang.
Пользовательские настройки
Конфигурация JSHint
"jshint.options": {}
(Редактировать)Используйте двойные кавычки при указании
"esversion"
Или скопируйте этот фрагмент в Настройки пользователя:
Создание
.jshintrc
файла не требуется, если вы хотите настроить глобальные параметры jshint для вашего редактораисточник
Если вы используете VSCode:
1.
cmd + ,
)jshint.options
в строку поиска"esversion": 6
к объекту параметров.2.
Или просто добавьте это в ваши настройки пользователя:
[ОБНОВЛЕНИЕ] новые настройки vscode
cmd + ,
)jshint
в поиск2.
источник
Я потратил целую вечность, пытаясь это исправить. Каждое решение говорит о «настройке параметров». Я не знаю, что это значит. Наконец-то я понял это. Вы можете просто включить закомментирована строку в верхней части файла
/*jshint esversion: 6 */
.источник
.jshintrc
а затем добавить следующий код в файл{ "esnext": true }
{ "esnext": true }
сейчас устарела . Теперь вы должны использовать{ "esversion": 6 }
вместо этого."esnext": true
я смог решить эту проблему."esversion": 6
не имел никакого эффекта.Вы можете указать esversion: 6 внутри объекта опций jshint. Пожалуйста, смотрите изображение. Я использую плагин grunt-contrib-jshint.
источник
Когда вы начинаете использовать ECMAScript 6, эта ошибка выдается вашей IDE.
Доступны два варианта:
если у вас есть только один файл и вы хотите использовать es6, просто добавьте строку внизу вверху файла.
Или, если у вас есть номер файла js или вы используете какой-либо фреймворк (например, nodejs express), вы можете создать новый файл с именем
.jshintrc
в корневом каталоге и добавить код ниже в файл:Если вы хотите использовать версию es6 для каждого проекта, вы можете настроить IDE.
источник
В вашем package.json вы можете указать Jshint использовать es6 следующим образом
источник
Если вы используете Webstorm и у вас нет собственного конфигурационного файла, просто включите опцию «
EcmaScript.next
Расслабление» вПосмотреть этот вопрос How-do-I-resol-these-JSHint-ES6-errors
источник
Если вы используете конфигурацию Grunt, вам необходимо выполнить следующие шаги
Предупреждающее сообщение в Jshint:
Решение:
После того, как настроили это, снова запустите.
источник
Создайте файл с именем, скажем, jshint_opts, с таким содержанием: {"esversion": 6}
Затем вызовите jshint с чем-то вроде этой командной строки:
jshint --config jshint_opts lib / *. js
источник
Для SublimeText 3 на Mac:
источник
Май 2020 Вот простое решение, которое я нашел, и оно подойдет для всех моих проектов, в Windows, если ваш проект находится где-то в каталоге c: создайте новый файл .jshintrc и сохраните его в каталоге C, откройте этот файл .jshintrc и напишите,
{ "esversion": 6}
и это Это. предупреждения должны исчезнуть, то же самое будет работать в каталоге dда, вы также можете включить этот параметр для конкретного проекта, только создав файл .jshintrc в корне вашего проекта и добавив
{ "esversion": 6}
источник
Создайте
.jshintrc
файл в корневом каталоге и добавьте туда последнюю версию js:"esversion": 9
и версию asi:"asi": true
(это поможет вам избежать использования точек с запятой)источник
Чтобы исправить это в Dreamweaver CC 2018, я пошел в настройки, отредактировал набор правил - выберите JS, отредактируйте / примените изменения, найдите «esnext» и изменил значение false на true. Это сработало для меня после нескольких часов исследований. Надеюсь, это поможет другим.
источник
При использовании Sublime Text 3:
источник
В новой версии Dreamweaver эта ошибка решена
И перейти к JS Изменить набор правил и прошлое
"jshintConfig": {"esversion": 6}
источник