yan*_*ick 3 typescript electron angular-cli ngx-translate angular
我有一个 Angular 应用程序,现在还需要它的桌面版本。我设法让它在电子中运行应用程序,一切都按预期工作。
但是本地化不起作用。在电子应用程序中,我只看到指向本地化文件中实际翻译的本地化键。
我主要是这样翻译 Angular 中的文本:
{{ "localization-key" | translate }}
Run Code Online (Sandbox Code Playgroud)
并且作为 json 文件的翻译基于assets/i18n/
有人知道如何进行本地化工作吗?
我也有这个问题。我在ngx-translate的官方文档中找到了解决方案。
如果要在使用 AoT 编译、 Ionic 或Electron时配置自定义 TranslateLoader ,则必须使用导出函数而不是内联函数。
export function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
@NgModule({
imports: [
BrowserModule,
HttpClientModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
}
})
],
bootstrap: [AppComponent]
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)
如果您使用 default TranslateHttpLoaderfor loader.useFactory,您会看到以下错误:
| 归档时间: |
|
| 查看次数: |
1099 次 |
| 最近记录: |