升级Angular从v11到v12后全模块出现NG 6002错误求助
解决Angular 11升级到12后全模块出现NG 6002错误的方案
- 检查模块导入路径的大小写匹配
Angular 12对文件路径大小写的校验更严格,此前版本忽略的大小写差异会触发NG6002。逐一核对所有import语句的路径,确保和实际文件/文件夹的大小写完全一致:
// 错误示例:实际文件为UserModule.ts import { UserModule } from './user/user.module'; // 正确示例:与文件名大小写完全匹配 import { UserModule } from './User/User.module';
- 验证
tsconfig.json的路径配置
检查compilerOptions中的paths映射,确保路径指向真实存在的模块,无拼写或层级错误:
{ "compilerOptions": { "paths": { "@app/*": ["src/app/*"] } } }
排查模块的
declarations与exports配置
确认每个模块的declarations数组仅包含当前模块声明的组件、指令、管道,且无重复声明;exports数组中的成员必须已在当前模块的declarations或imports中存在。清理完整的Angular构建缓存
除重装node_modules外,执行以下命令清理Angular专属缓存并重建项目:
ng cache clean --all rm -rf dist ng build
检查第三方库兼容性
部分第三方库未及时适配Angular 12会导致模块解析异常。确认项目依赖的第三方库是否已发布支持Angular 12的版本,必要时升级对应依赖。校验
angular.json配置正确性
检查projects节点下的sourceRoot路径是否准确,各构建目标的tsConfig是否指向正确的配置文件,避免引用旧版本的tsconfig。
内容的提问来源于stack exchange,提问作者Bindhusha
相关产品推荐
相关产品推荐

