Bal*_*ldy 9 angular-services angular
我无法将服务注入Angular 4.x中的另一个服务并收到错误: Error: No provider for SkillsService!
我创建了一个repo来重现这个错误.您可以通过克隆repo本地运行它,只需ng test从repo根目录运行.
我采取的步骤......
ng newng g service contactng g service skillsng test并收到错误:Error: No provider for SkillsService!如何为SkillsService的ContactService添加提供程序?
似乎它必须是非常简单的东西,但它很难从文档和搜索中解决.
JB *_*zet 14
您对ContactService的测试使用测试模块,该模块仅将ContactService声明为提供者.但是ContactService需要一个SkillsService.因此,SkillsService也必须是测试模块提供者的一部分:
TestBed.configureTestingModule({
providers: [ContactService, SkillsService]
});
Run Code Online (Sandbox Code Playgroud)
您还可以在测试中使用整个应用程序模块:
TestBed.configureTestingModule({
imports: [AppModule]
});
Run Code Online (Sandbox Code Playgroud)
但我不建议这样做,因为在应用程序增长时,测试会变得越来越慢.
| 归档时间: |
|
| 查看次数: |
13403 次 |
| 最近记录: |