复制项目后ESLint提示找不到airbnb-base配置的原因与解决办法
错误产生原因
该错误本质是ESLint在运行时无法读取到eslint-config-airbnb-base规则包,常见触发场景如下:
eslint-config-airbnb-base及其配套依赖eslint-plugin-import未写入项目的package.json依赖清单:folder1运行正常,大概率是该依赖被安装到了全局Node环境,或者folder1的上级目录存在包含该依赖的node_modules文件夹,ESLint的依赖向上查找机制可以命中,但folder2所在路径没有对应全局/上级依赖,因此报错。- 执行
npm install时携带了--production等生产环境参数:如果eslint-config-airbnb-base是放在devDependencies下,生产模式安装会跳过所有开发依赖,导致包未安装。 - 复制过程中
package.json/package-lock.json文件损坏,导致依赖安装不完整。
修复方案
按优先级选择以下方案即可:
- 优先推荐将依赖写入项目清单,在folder2目录执行以下命令,将依赖安装到开发依赖:
npm install eslint-config-airbnb-base eslint-plugin-import --save-dev
安装完成后重新执行eslint --ext .js .即可正常运行。
2. 如果确认package.json中已经存在对应依赖,先删除folder2下的node_modules文件夹和package-lock.json文件,重新执行不带生产参数的npm install即可。
3. 不推荐的临时解决方案:全局安装对应依赖,执行npm install eslint-config-airbnb-base eslint-plugin-import -g,该方案会导致多项目版本冲突风险。
内容的提问来源于stack exchange,提问作者user3552178
相关产品推荐
相关产品推荐

