如何在服务中使用提供者?

Hon*_*iao 9 angular

我需要使用一个服务的多个实例.

通常当我在组件中使用此服务的一个实例时,我这样写:

@Component({
    selector: 'one-component',
    providers: [provide("token1", {useClass: Service})],
    template: `
        <h1>App</h1>
    `
})
export class OneComponent {
    constructor(@Inject('token1') service:Service) {}
}
Run Code Online (Sandbox Code Playgroud)

但是现在我需要在Service2中使用这个服务,我这样写:

export class Service2 {
    constructor(@Inject('token1') service:Service) {}
}
Run Code Online (Sandbox Code Playgroud)

如您所知,它显示:

没有提供者

因为Service2没有providers: [provide("token1", {useClass: Service})].但是我可以在哪里添加它,因为它没有@Component?

谢谢

Gün*_*uer 4

遗憾的是,目前不支持以这种方式配置服务,并且目前没有计划添加支持https://github.com/angular/angular/issues/5622