好吧,我正在按照以下基础架构构建我的项目:
- 功能模块。
- 核心模块。
- 共享模块。
但是有一点我还不够清楚。
据我所知,HttpClientModule
应该是CoreModule
因为...它提供了HttpClient
向服务器发出 HTTP 请求的服务。
现在,imports
数组允许 Angular 模块使用其他模块提供的功能,并且exports
数组允许 Angular 模块公开它的一些功能。
我有这个CoreModule
:
@NgModule({
imports: [
BrowserAnimationsModule,
HttpClientModule,
RouterModule.forRoot(routes, {
enableTracing: true
})
],
exports: [
RouterModule
]
})
export class CoreModule {
}
现在,既然 myCoreModule
是在 my 中导入的,那么andAppModule
不应该也被导出吗?就像.HttpClientModule
BrowserAnimationsModule
RouterModule
我看到CoreModule
andSharedModule
喜欢某种桥梁。
对SharedModule
我来说更有意义:
@NgModule({
imports: [
MatButtonModule
],
exports: [
MatButtonModule
]
})
export class SharedModule {
}
SharedModule
导入然后MatButtonModule
导出它,以便其他模块可以使用它。
不应该CoreModule
是一样的吗?因为App运行良好;但是,我处于开发模式。
希望我足够清楚,有人可以帮助我消除这个疑问。