ESLint не работает в VS-коде?

ESLint не работает для меня в VS-коде. У меня есть плагин, установленный в VS Code, и сам ESLint как зависимость разработчика в моем пакете.json, который я также установил.

Я изменил следующую опцию в настройках пользователя VS Code:

{
  "eslint.options": { "configFile": "C:/mypath" }
}

у меня есть команда eslint --init чтобы добавить basic .eslintrc.json в основной каталог моего пакета.

другие люди смогли получить обратную связь ESLint от VS Code, используя тот же самый пакет с тем же самым конфигурационным файлом ESLint.

Я не получил никакой обратной связи при прямом нарушении нескольких правил, которые были включены в рекомендуемый набор правил, который по умолчанию находится внутри .

что я упустил?

Edit: я тестировал с помощью ESLint через командную строку, и все работало так, как ожидалось, с ошибками, найденными там, где они должны были быть, однако эти же ошибки никогда не появлялись в VS-коде. Проблема, похоже, в том, на стороне VS Code, а не ESLint.

4 ответов


есть несколько причин, по которым ESLint не может дать вам обратную связь. ESLint будет искать ваш файл конфигурации сначала в вашем проекте, и если он не может найти .eslintrc.json там будет искать глобальную конфигурацию. Лично я устанавливаю ESLint только в каждом проекте и создаю конфигурацию на основе каждого проекта.

вторая причина, почему вы не получаете обратной связи, что, чтобы получить обратную связь, вы должны определить свои правила пылеобразования в .eslintrc.формат JSON. Если там нет правил или у вас нет установленных плагинов, вы должны определить их.


Если ESLint работает на терминале, но не внутри VSCode, вероятно, что расширение не может обнаружить библиотеку ESLint как из локальной, так и из глобальной папки модулей узла.

чтобы проверить, нажмите CTRL+SHIFT+U в VSCode, чтобы перейти на панель вывода после открытия JS-файла в вашем проекте. Если он показывает " не удалось загрузить библиотеку ESLint для документа {{documentName}}.js", тогда возникает проблема с попыткой обнаружить путь.

Если да, то установить его вручную, настроив " eslint.nodePath" в настройках. Дать ему полный путь; использование переменных среды в настоящее время не поддерживается. Эта опция была задокументирована в страница расширения ESLint.


Если вы используете глобальную установку ESLint, все плагины, используемые в вашей конфигурации, также должны быть установлены глобально. Как мудрый для локальной установки. если u установлен локально и правильно настроен локально, но eslint не работает, попробуйте перезапустить IDE. Это только что случилось со мной с VScode.


У меня была аналогичная проблема в windows, однако иногда eslint работал (в vscode) иногда нет. Позже я понял, что через некоторое время он работает нормально. Это было связано с этим вопросом: сервер eslint занимает ~3-5 минут до появления

настройка переменной среды NO_UPDATE_NOTIFIER=1 решена проблема