При создании 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