我要测试的服务具有以下构造函数:
constructor(@Inject('enviroment') environment) {
this.initConfig(environment);
}提供程序下的environment是在app.module中提供的:
{ provide: 'environment', useValue: environment }因此,我将TestBed配置为:
beforeEach(() => {
TestBed.configureTestingModule({
providers: [{ provide: 'environment', useValue: testEnv }, TestService]
});
service = TestBed.get(TestService);
});我不断地得到:
错误: StaticInjectorError(DynamicTestModule)enviroment: StaticInjectorError(平台:核心)环境: NullInjectorError:没有环境提供者!
代码本身在服务/构建时运行良好,因此我假设错误就在我如何配置TestBed的某个地方?我也尝试过useFactory,但没有结果。
beforeEach(() => {
TestBed.configureTestingModule({
providers: [{ provide: 'environment', useFactory: ()=>testEnv }, TestService]
});
service = TestBed.get(TestService);
});发布于 2019-06-10 14:55:48
我想这只是一个错误。
它丢失了环境中的n,n
constructor(@Inject('enviroment') environment) {https://stackoverflow.com/questions/56527322
复制相似问题