Javascript NullInjectorError:StaticInjectorError(AppModule)[TranslateService->;TranslateStore]
我有以下结构 app.module.tsJavascript NullInjectorError:StaticInjectorError(AppModule)[TranslateService->;TranslateStore],javascript,angular,ngx-translate,Javascript,Angular,Ngx Translate,我有以下结构 app.module.ts @ngModule({ imports: [ // other imports SharedModule, TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: createTranslateLoader, deps:
@ngModule({
imports: [
// other imports
SharedModule,
TranslateModule.forRoot({
loader: { provide: TranslateLoader, useFactory: createTranslateLoader, deps: [HttpClient] }
})
],
providers: [
// other providers
TranslateService
]
})
export class AppModule { }
@ngModule({
declarations: [MyComponent]
imports: [
// other imports
AnotherComponentModule,
TranslateModule.forChild()
],
exports: [MyComponent]
})
export class SharedModule { }
shared.module.ts
@ngModule({
imports: [
// other imports
SharedModule,
TranslateModule.forRoot({
loader: { provide: TranslateLoader, useFactory: createTranslateLoader, deps: [HttpClient] }
})
],
providers: [
// other providers
TranslateService
]
})
export class AppModule { }
@ngModule({
declarations: [MyComponent]
imports: [
// other imports
AnotherComponentModule,
TranslateModule.forChild()
],
exports: [MyComponent]
})
export class SharedModule { }
通过这种设置,我得到了错误
错误NullInjectorError:StaticInjectorError(AppModule)[TranslateService->TranslateStore]:
StaticInjectorError(平台:核心)[TranslateService->TranslateStore]:
NullInjectorError:没有TranslateStore的提供程序
从角度6迁移到角度8时开始出现错误
该错误不会出现在另一个组件模块
中的组件中,因此它只出现在直接在共享模块
中声明的组件中
当我将MyComponent放在自己的模块中并将其导入sharedModule时,事情就开始起作用了
我尝试将
TranslateService
和TranslateStore
添加到SharedModule
中,以及使用MyComponent
添加到包含组件的模块中,但没有成功。我也遇到了同样的问题
您需要在app.module中导入HttpClientModule
试试这个:
@ngModule({
imports: [
HttpClientModule
SharedModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
})
],
providers: []
})
export class AppModule { }
我也有同样的问题 您需要在app.module中导入HttpClientModule 试试这个:
@ngModule({
imports: [
HttpClientModule
SharedModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
})
],
providers: []
})
export class AppModule { }