如何解决AppModule 或 FeatureModule 中的 Angular 导入模块
像 HttpClientModule 这样的常见模块是否应该在每个功能模块中导入 - 还是应该在 AppModule 中只导入一次?
我在想如果每个功能模块都导入HttpClientModule,如果AppComponent导入多个这些功能模块,它会被多次加载吗?而如果 HttpClientModule 只会在 AppModule 中导入,是不是就失去了功能模块的可重用性——因为它需要导入 HttpClientModule 才能独立?
功能模块:
@NgModule({
declarations: [AComponent],imports: [
CommonModule,FormsModule,HttpClientModule
],exports: [
AComponent
]...
应用模块:
@NgModule({
declarations: [
AppComponent
],imports: [
browserModule,CoreModule,HttpClientModule,FeatureModule
]...
解决方法
您应该使用 Angular 服务,并将 provideIn 设置为“root”。 然后将该服务注入到应该使用它的每个组件中。 这样,该代码只会导入到您的包中一次。
,制作共享模块,将HttpClientModule等常用模块放入其中 然后在每个功能模块中导入共享模块
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。