【发布时间】:2017-06-24 21:20:35
【问题描述】:
关于 Angular 和 功能模块。
据此:
当我们在一个功能模块中提供服务时,它会被我们应用的根模块急切加载,它可供所有人注入。
这是否意味着此功能的所有组件都可以使用它?还是其他功能模块的所有组件?
问题是我们在一个功能模块中有一个服务,我们可以在其他功能模块中注入这个服务。
我们的带有服务的功能模块:
@NgModule({
imports: [SharedModule],
declarations: [FeatureAComponent],
exports: [FeatureAComponent],
providers: [FeatureAService]
})
export class FeatureAModule { }
我们的没有服务的功能模块:
@NgModule({
imports: [SharedModule],
declarations: [FeatureBComponent],
exports: [FeatureBComponent],
providers: []
})
export class FeatureBModule { }
这里发生了什么,我在 FeatureBComponent 中注入了 FeatureAService 并且它正在工作,为什么?我期待它不起作用。
【问题讨论】:
标签: angular