Подтвердить что ты не робот

ESLint: Как установить .eslintrc для распознавания "require"?

Я новичок в ESLint, и я успешно интегрировал ESLint с IntelliJ.

Исключительно, моя интеграция ESLint не распознала node, но в базовом обзоре документации было ясно, что, создав файл конфигурации с именем .eslintrc в корне моей папки проекта (с правильной настройкой IntelliJ на доступ к этому файлу) и установка "node":true, ESLint распознает node (т.е. работает следующее полное .eslintrc).

// Contents of .eslintrc at root of project - support for Node and jQuery
{
  "env" : {
    "node" : true,
    "jquery" : true
  },
}

Однако ESLint по-прежнему не распознает require(), о чем свидетельствует этот снимок экрана:

ESLint does not recognize <code>require()</code>

Я сделал все возможное в течение разумного промежутка времени, чтобы найти решение основного вопроса о том, как получить ESLint для распознавания require(). В частности, я нашел возможный hint здесь, где он предложил добавить "amd":false в (я предположил) файл .eslintrc - но нет перейти.

Это кажется основным. Как я могу получить .eslintrc для распознавания require()?

(Если в вашем ответе вы можете дать представление о том, как охватить более общие случаи, это также было бы полезно. Спасибо!)

4b9b3361

Ответ 1

Проблема не в ESLint. Если вы внимательно присмотритесь к своему сообщению, в нем говорится JSHint.

Поскольку вы пытаетесь настроить ESLint, самым простым решением было бы отключить или удалить плагин JSHint из вашей среды IDE.

Если вы все еще хотите использовать JSHint вместе с ESLint, вы можете сделать следующее:

Решение с одним файлом: добавьте /* global require */ в начало файла.

Общее решение для всех файлов: добавьте "node": true к вашему .jshintrc.

Ответ 2

Добавление amd в env внутри .eslintrc позволит вам использовать define() и require() в соответствии со спецификацией amd:

{
  "env": {
    "amd": true
  }
}