"错误:没有TranslateStore的提供商!"而UI单元测试Angular 4中的翻译服务。 运行测试命令后,我得到测试用例失败错误以及上面的错误消息。
答案 0 :(得分:1)
Try this:
import {TranslateFakeLoader,TranslateLoader,TranslateModule,TranslateService } from '@ngx-translate/core';
TestBed.configureTestingModule({
imports: [
...
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useClass: TranslateFakeLoader
}
})
],
...
providers: [
TranslateService
]
答案 1 :(得分:0)
将TranslateStore
导入并添加到我的延迟加载模块中的提供程序中已解决了我的问题。
import { TranslateModule,TranslateService,TranslateStore } from '@ngx-translate/core';
export function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
@NgModule({
declarations: [...],
imports: [
TranslateModule.forChild(
{
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
}
})],
providers:[TranslateStore ]
})
查看下面的问题链接以获取更多信息
https://github.com/ngx-translate/core/issues/883#issuecomment-502037966