执行npm run dev时遇NG6002错误:SharedComponentsModule非NgModule类
错误原因与解决方案
错误原因
你遇到的NG6002错误是循环模块依赖导致的:
SharedComponentsModule(位于src/app/shared/components/)中导入了ScanQrPageModule- 而
ScanQrPageModule又反过来导入了SharedComponentsModule
这种互相引用的闭环会让Angular构建编译器无法正确解析模块的@NgModule元数据,进而误判SharedComponentsModule不是一个NgModule类。
解决方案
- 移除循环依赖:打开
SharedComponentsModule的代码,删除这一行导入:
import {ScanQrPageModule} from './../pages/scan-qr/scan-qr.module'
共享组件模块的职责是提供可复用的组件,不需要导入任何业务页面模块,页面模块依赖共享模块才是正确的依赖方向。
- 重新验证项目:执行
npm run build(或你的构建命令)确认问题是否解决,也可以先通过npm run dev验证开发模式下的编译状态。
内容的提问来源于stack exchange,提问作者Amit Sharma
相关产品推荐
相关产品推荐

