删除TypeScript后ESLint报找不到@typescript-eslint/parser错误如何解决?
问题原因
你的项目ESLint配置中还保留了TypeScript专用的解析器规则,删除TS相关文件后ESLint找不到对应的依赖包就触发了报错。
解决步骤
- 第一步:卸载所有TS相关开发依赖
执行以下命令:
npm uninstall @typescript-eslint/parser @typescript-eslint/eslint-plugin typescript --save-dev # 如果你用yarn执行下面这条 yarn remove @typescript-eslint/parser @typescript-eslint/eslint-plugin typescript --dev
- 第二步:修改ESLint配置
找到你项目中的ESLint配置文件(可能是package.json里的eslintConfig字段、.eslintrc、.eslintrc.js、.eslintrc.json任意一种),删除所有和TypeScript相关的配置项:- 删除
parser: '@typescript-eslint/parser'这一行 - 删除
extends数组中所有带@typescript-eslint的条目 - 删除
plugins数组中所有带@typescript-eslint的条目 - 删除
overrides数组中所有针对.ts/.tsx文件的规则块
- 删除
- 第三步:清理依赖缓存重装
执行以下命令清理旧依赖并重新安装:
rm -rf node_modules package-lock.json # 用yarn的话执行 rm -rf node_modules yarn.lock npm install # 用yarn的话执行 yarn install
- 第四步:删除残余TS配置文件
不需要的TS相关文件可以直接删除:tsconfig.json、项目中所有.d.ts后缀的声明文件、所有.ts/.tsx后缀的代码文件。
补充:如果你用的是create-react-app生成的项目,不想修改默认ESLint配置,也可以直接执行
npm install typescript --save-dev把TypeScript装成开发依赖,不需要做任何配置也能正常运行JS代码,只是会多一个无关的开发依赖包。
做完以上操作后重新启动项目即可解决报错。
内容的提问来源于stack exchange,提问作者Freduah Gideon
相关产品推荐
相关产品推荐

