升级ESLint 8.28.0后Neovim中TypeScript开发报错求助
解决ESLint 8.28.0升级后Neovim中eslint_d找不到eslint模块的问题
报错详情
❴eslint_d❵ [eslint] Error: Failed to load plugin 'import declared in '.eslintrc.js » eslint-config-semistandard » eslint-config-standard': Cannot find module 'eslint' Require stack:
- /Users/jornajan/Coding/bilibili/muke/miProject/node_modules/eslint-plugin-import/lib/ExportMap.js
- /Users/jornajan/Coding/bilibili/muke/miProject/node_modules/eslint-plugin-import/lib/rules/named.js
环境版本:
node -v: 18.12.1npm -v: 9.1.3
修复步骤
1. 彻底清理并重装项目依赖
依赖缓存或版本冲突是常见诱因,执行以下命令:
# 删除依赖目录和锁文件 rm -rf node_modules package-lock.json # 重装依赖 npm install
2. 确保eslint-plugin-import与ESLint版本兼容
ESLint 8.x需要匹配兼容的eslint-plugin-import版本,直接指定兼容版本安装:
npm install eslint-plugin-import@^2.28.1 --save-dev
3. 排查全局与本地ESLint冲突
如果全局安装了ESLint,可能和本地项目版本冲突,先卸载全局版本:
npm uninstall -g eslint
同时确认本地项目的devDependencies中存在ESLint,若没有则手动安装指定版本:
npm install eslint@8.28.0 --save-dev
4. 重置eslint_d缓存
eslint_d会缓存依赖状态,重启或清理缓存:
# 停止eslint_d服务 eslint_d stop # 清理缓存目录(可选) rm -rf ~/.eslint_d
之后重新打开Neovim即可。
5. 升级ESLint配置包
报错中涉及eslint-config-semistandard和eslint-config-standard,这些配置包可能未适配ESLint 8.28.0,升级它们:
npm install eslint-config-semistandard eslint-config-standard --save-dev
内容的提问来源于stack exchange,提问作者JornaJan Dev
相关产品推荐
相关产品推荐

