我在Angular 4中从Http升级到HttpClient时遇到问题。我有一个服务,它有一个嵌套的HttpClient引用。我的结构看起来像这样:
我的TokenHandlerService
注入MyHttpService
注入Angulars HttpClient
运行我在网上找到的代码片段如下:
let service: TokenHandlerService;
let httpMock: HttpTestingController;
beforeEach(() => {
TestBed.configureTestingModule({
imports: [
HttpClientModule,
HttpClientTestingModule
],
providers: [
TokenHandlerService,
MyHttpService
]
});
httpMock = TestBed.get(HttpTestingController);
service = TestBed.get(TokenHandlerService);
});
我想测试TokenHandlerService,但运行这个我总是在一个
Error: No provider for HttpClient!
。
如何将模拟的HttpClient传递给更深层次的嵌套服务?
答案 0 :(得分:1)
答案 1 :(得分:0)
您可以尝试从导入语句中删除 HttpClientModule 吗?
因为我们已经为测试模块添加了 HttpClientTestingModule