Angular 12迁移问题错误NG6002:出现在AppModule的NgModule.imports中,但本身有错误

Posted

技术标签:

【中文标题】Angular 12迁移问题错误NG6002:出现在AppModule的NgModule.imports中,但本身有错误【英文标题】:Angular 12 migration issue error NG6002: Appears in the NgModule.imports of AppModule, but itself has errors 【发布时间】:2021-11-09 06:17:50 【问题描述】:

我们正在将我们的项目迁移到 angular 12 和 primeng 12,但我们陷入了这个重复多次的错误。 我们查看了其他类似的questions,但无法解决答案中提出的任何解决方案。

构建时显示此错误:

Error: src/app/app-shared.module.ts:117:14 - error NG6002: Appears in the NgModule.imports of AppModule, but itself has errors

export class AppSharedModule 

然后在同一位置出现许多重复错误。

我们已经尝试了很多解决方案,比如做服务器、停用 Ivy,但都没有解决。

有什么解决办法吗? 谢谢!

【问题讨论】:

【参考方案1】:

有这个问题是因为其中一个模块有一个捆绑包文件。必须删除它并添加适当的package.json 参考。

【讨论】:

您能否详细说明您的答案?【参考方案2】:

为了回答这个问题,我们得出的结论是,我们在尝试将项目从 angular 10 迁移到 12 并将 ng 9 迁移到 12 时犯了一个错误。

迁移 Angular 项目时,不建议同时升级多个版本

正如 https://angular.io/guide/updating 中的角度推荐

所以,现在将逐步进行迁移,首先准备应用程序,删除所有警告和弃用,然后一次迁移一个版本。

谢谢!

编辑:重新启动迁移后,设置"enableIvy": true 后再次出现此错误,因为我们的模块之一与常春藤不兼容,设置为 false 解决问题

【讨论】:

我只是想把这句话放在红色警报风格上,但我不知道怎么做;( 在每次ng update 通话之间进行rm -rf node_modules package-lock.json ; npm install ; 也有助于解决此类更新狂欢期间的一些问题。 这个命令是做什么的?这里我们使用删除node modules package.lock 并再次执行npm install 来清理并重新启动项目 正是如此。我的观点是,如果您不在版本之间从头开始重新安装,那么在 9-10-11-12 时后续 ng update 的结果会有所不同。

以上是关于Angular 12迁移问题错误NG6002:出现在AppModule的NgModule.imports中,但本身有错误的主要内容,如果未能解决你的问题,请参考以下文章

关于 Angular 9 迁移的 Angular 生产问题

多个模块中的管道重用,NG6007(由多个 NgModule 声明)或 NG6002(无法解析为 NgModule 类),

Angular 2 单元测试 - 出现错误无法加载“ng:///DynamicTestModule/module.ngfactory.js”

Angular 6,在 ng build index.html 在控制台中出现错误之后

在Angular中将项目从v10迁移到v12后如何修复错误[关闭]

在 Angular 9 中迁移到 Jest 会出现“未定义区域”错误