При создании ESLint CLIEngine возникла проблема.

There was trouble creating the ESLint CLIEngine. -
 'basePath' should be an absolute path

Попытка использовать eslint

$ npx prettier-eslint **/*.js

но получаю:

prettier-eslint [ERROR]: There was trouble creating the ESLint CLIEngine.
prettier-eslint-cli [ERROR]: There was an error formatting "test/fizzBuzz.test.js":
    AssertionError [ERR_ASSERTION]: 'basePath' should be an absolute path.

2 ответа

Решение

Это связано с проблемой выбора файлов с

**/*.js

Текущий обходной путь UNIX: используйте $PWD, т.е.

$ npx prettier-eslint $PWD/'**/*.js'

Это произвело правильные файлы в качестве вывода

re: https://github.com/prettier/prettier-eslint-cli/issues/208

Это также относится к аналогичным проблемам с использованием package.json

например, имея

"lint": "eslint . && prettier-eslint --list-different **/*.js",
"format": "prettier-eslint --write **/*.js"

также сгенерирует эту ошибку. В Unix это в настоящее время можно исправить с помощью$PWD

"lint": "eslint . && prettier-eslint --list-different $PWD/'**/*.js'",
//                                                    /|\
"format": "prettier-eslint --write $PWD/'**/*.js'"
//                                 /|\

Если вам нужно решить проблему в Windows, понизьте версию eslint до 6.6.0.

npm install eslint@6.6.0
Другие вопросы по тегам