我有一个带有ngx-translate的Angular 5应用程序,我在我的app模块和组件中使用了类似的东西:
// app.component
// ...
constructor (private translateService: TranslateService) {
translate.setDefaultLang('en-us');
translate.use('en-us');
}
// app.module
// ...
function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
@NgModule({
// ...
imports: [
// ...
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
}
}),
// ...
当我ng serve
我的应用时,我的翻译根本没有加载,网络标签中没有活动。当我ng serve -e prod
时,会加载翻译。
修改:在prod或dev环境中提供服务之间的区别:
json
未加载。在prod
我看到i18n/de.json
请求的请求。在dev
中,没有请求。浏览器控制台中没有任何错误。
我错过了什么?
Angular 5.1,ng-cli 1.6,ngx-translate 9.0.1。