问题描述
我尝试以babel-eslint作为解析器全局运行ESLint,但未成功安装。我在Windows 10计算机上全局安装了这两个软件包:
npm list --depth=0 -g
C:\Users\UserName\AppData\Roaming\npm
+-- @angular/cli@8.3.9
+-- babel-eslint@10.1.0
+-- create-react-app@3.4.1
+-- eslint@7.10.0
+-- nodemon@2.0.5
+-- npm@6.14.7
+-- npm-check-updates@3.1.23
+-- npm-install-peers@1.2.1
`-- typescript@3.6.4
我的主目录中存在一个默认的.eslintrc
配置文件:C:\Users\UserName
这很好,直到我将babel-eslint
指定为parser
:
{
"parserOptions": {
"ecmaVersion": 11,"sourceType": "module","ecmaFeatures": {
"jsx": true
}
},"parser": "babel-eslint","rules": {
"no-var": "error","no-use-before-define": "off","no-unused-vars": "warn","prefer-const": "warn","no-console": "off","func-names": "off","node/no-unsupported-features/es-syntax": "off"
}
}
ESLint服务器抛出:
[Info-11:06:04]无法加载在以下位置声明的解析器“ babel-eslint” 'PersonalConfig':找不到模块'babel-eslint'需要堆栈:- C:\ Users \ UserName \ .eslintrc
当我尝试使用air-bnb config扩展我的配置时,也会发生同样的情况,该配置也是全局安装的。我如何告诉ESLint在哪里寻找依赖项,因为它们不是安装在C:\Users\UserName
中而是安装在C:\Users\UserName\AppData\Roaming\npm
中?
解决方法
尝试一下:
"parser": "C:/Users/<username>/AppData/Roaming/npm/node_modules/babel-eslint",
这不是一个完美的解决方案,但是可以。