Eslint отключить строгий режим при использовании Babel Parser

Я использую eslint для проверки правильности JavaScript в проекте React. Однако я столкнулся с проблемой при одновременном использовании --rule 'strict: 0' и --parser=babel-eslint. К примеру:

Eslint без анализатора babel:

eslint --no-eslintrc file.js

Не отображает вывод, потому что не находит ошибку.

Эслинт с бабел-парсером:

eslint --no-eslintrc --parser=babel-eslint file.js

Отображает эту ошибку:

file.js
1:1  error  Parsing error: Octal literal in strict mode
> 39 |  language.french.value           = ' caract\350res';

Я попытался отключить строгий режим с помощью --rule 'strict: 0', но это не удалось. Я получаю еще прецедентную ошибку.

Знаете ли вы способ отключить строгий режим с помощью babel-parser?

2 ответа

Я только что столкнулся с той же проблемой, наконец нашел ответ на github. Вы можете отключить глобальный строгий режим, изменивsourceType к script в вашем файле.eslintrc:

{
  ...
  parser: 'babel-eslint',
  parserOptions: {
    sourceType: 'script'
  }
  ...
}

Или, если вы хотите установить это через cli, просто:

eslint --no-eslintrc --parser=babel-eslint --parser-options=sourceType:script file.js

Потом:

Однако эта проблема все еще существует; Babel теперь использует Mono-Repo, и некоторые вещи изменились, что затруднило поиск этого Q&A. В настоящее время, если вы используете синтаксический анализатор babel для eslint, это больше не babel-eslint . И сообщение об ошибке ESLint больше не ссылается на проблему с восьмеричным литералом.


Сейчас:

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

(Апрель 2021 г.)

      
'use strict' is unnecessary inside of modules. eslint(strict)


а в вашем eslintrc.json или эквиваленте YAML вы будете использовать имя bables newmono-repo eslint / babel parser '@ babel / eslint-parser'. Я разместил парсер и блок настроек парсера ниже.

        {
    "parser": "@babel/eslint-parser",
    "parserOptions": {
      "sourceType": "script"
    },
  }

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

Другие вопросы по тегам