2017-04-13 9 views
0

TestBed.configureTestingModule()のプロバイダを別のプロバイダのインスタンスでインスタンス化するにはどうすればよいですか?TestBedでプロバイダを別のプロバイダのインスタンスでインスタンス化する

例(明らかに動作しません):

beforeEach(() => { 
    TestBed.configureTestingModule({ 
    providers: [ 
     { provide: ServiceOne, useValue: new ServiceOne('parameterOne')}, 
     { provide: ServiceTwo, useValue: new ServiceTwo(TestBed.get(ServiceOne), 'parameterTwo')} 
    ] 
    }); 
}); 

答えて

1

factory provider

providers: [ 
    { provide: ServiceOne, useValue: new ServiceOne('parameterOne')}, 
    { 
    provide: ServiceTwo, 
    deps: [ ServiceOne ], 
    useFactory: (serviceOne: ServiceOne) => { 
     return new ServiceTwo(serviceOne, 'parameterTwo') 
    } 
    } 
] 
+0

感謝を使用してください!これはまさに私が探していたものです。 – Raven

関連する問題