Решение ошибки ESLint: 'const' зарезервировано. Подробный гайд
Пройдите тест, узнайте какой профессии подходите
Быстрый ответ
Чтобы устранить ошибку "Ошибка разбора: Ключевое слово 'const' является зарезервированным"
в ESLint, выполните следующие шаги:
- Обновите свой файл
.eslintrc
для использования синтаксиса ES6:
{
"parserOptions": {
"ecmaVersion": 2015
}
}
- Убедитесь, что ESLint поддерживает ES6. Если вы используете Babel, установите
@babel/eslint-parser
:
{
"parser": "@babel/eslint-parser"
}
- Проверьте версию Node.js, так как устаревшая версия может оказаться причиной проблем с поддержкой возможностей ES6.
Правильная настройка ESLint
Выберите файл .eslintrc
для настройки ESLint. В нем необходимо указать использование стандартов современного JavaScript:
- Проверьте, установлена ли у вас версия ESLint не ниже v7.30.0, которая поддерживает ES6.
- Добавьте
/* eslint-env es6 */
в начало ваших JavaScript-файлов, чтобы ESLint знал о вашем использовании ES6. - Задайте
ecmaVersion
как"latest"
вparserOptions
, чтобы включить поддержку последних возможностей ECMAScript. - В разделе
env
укажите значение{"es6": true}
, чтобы обеспечить доступ к глобальным объектам ES6, таким какPromise
. - Убедитесь, что пакеты
eslint-plugin
иeslint-config
обновлены до последних версий. - В Visual Studio Code настройте
"eslint.options"
вsettings.json
, чтобы поведение ESLint соответствовало вашим предпочтениям при написании кода.
Продвинутый уровень: Управление обновлениями и возможными проблемами
Обновления весьма важны, но иногда могут приводить к новым сложностям:
- Регулярно обновляйте npm-пакеты, чтобы избежать проблем с совместимостью.
- В случае возникновения проблем с использованием
"latest"
вecmaVersion
, установите её на2017
или выберите другую версию, наиболее подходящую для вашего кода.
Использование /* eslint-disable */
целесообразно с некоторой осторожностью, так как это может скрывать реальные проблемы в коде.
Визуализация
Представьте ESLint как переводчика языков:
Когда ESLint работает со современным JS: 🛠️ (const, let, стрелочные функции) -> 💬 Всё понятно!
Когда ESLint сталкивается со старым синтаксисом: 🕓 Старый переводчик JS ⚙️ -> 💬 const
? Это слово из будущего!
Таким образом, ESLint оказывается в замешательстве от const
, словно это что-то, чему он еще не научился.
Тонкая настройка ESLint
ESLint позволяет точно настроить себя под любой стиль кодирования или проект:
- Для спецификации поведения ESLint, используйте дополнительные параметры
parserOptions
в.eslintrc.js
. - В Visual Studio Code, параметр
"useEslintrc": false
вsettings.json
дает возможность переопределить настройки.eslintrc.json
для определенного проекта. - Поместите конфигурационные комментарии ESLint в начало файла, чтобы гарантировать их применение ко всему содержимому.