升级.NET Core+Angular项目从11到12时遇NGCC报错求助
Angular 12升级后NGCC失败问题的修复方案
清理缓存与依赖文件
- 删除项目根目录下的
node_modules文件夹 - 删除
package-lock.json文件 - 执行
npm cache clean --force清理npm缓存 - 重新运行
npm install
- 删除项目根目录下的
对齐Angular CLI版本
- 卸载全局旧版本CLI:
npm uninstall -g @angular/cli - 安装Angular 12版本的全局CLI:
npm install -g @angular/cli@12 - 安装项目本地的Angular 12 CLI:
npm install @angular/cli@12 --save-dev
- 卸载全局旧版本CLI:
强制执行NGCC编译
- 在
package.json的scripts字段中添加:"postinstall": "ngcc --properties es2015 browser module main --first-only --create-ivy-entry-points" - 运行
npm run postinstall,完成后尝试启动项目
- 在
排查第三方依赖兼容性
- 检查
package.json中的第三方库,特别是Angular组件类库,将其升级到支持Angular 12的版本;若部分库暂不支持,可尝试添加"skipLibCheck": true到tsconfig.json的compilerOptions中临时绕过类型检查
- 检查
调整.NET Core集成项目的构建配置
- 打开
angular.json,确保构建配置中aot选项设为true:"architect": { "build": { "options": { "aot": true } } } - 若项目有自定义
webpack.config.js,检查是否存在与Angular 12编译流程冲突的配置,必要时暂时注释掉自定义配置测试
- 打开
内容的提问来源于stack exchange,提问作者Lynley Cotte
相关产品推荐
相关产品推荐

