Angular 5 中每个组件的新服务实例

New instance of service for each component in Angular 5

我想将我所有的逻辑都放在组件的服务中。有没有办法为每个组件提供本地服务

如果您想要组件的本地实例,您可以做的是 - 您可以在@component 装饰器中使用 Providers:[SimpleService] 元数据。

 @Component({
 selector: 'parent',
 template: `...`,
 providers: [ SimpleService ]
})
class ParentComponent {
  constructor(private service: SimpleService) { }
}

ParentComponent 的每个实例现在都有自己的 SimpleService 实例,因此状态不是全局共享的,而是仅在 ParentComponent 和它的子组件之间共享。