ngx-translate自定义加载程序找不到翻译

时间:2017-09-14 14:39:19

标签: angular typescript localization internationalization ngx-translate

我决定为翻译实现自定义加载器,因为我有一个问题,即字符串希望在加载器加载正确的翻译之前进行翻译。我跟着ngx-translate github上的例子,但现在到处都有键而不是值。我的自定义加载器:

    class CustomLoader implements TranslateLoader {
  getTranslation(lang: string): Observable<any> {
    return Observable.of({ KEY: 'value' });
  }
}

在app.module导入中我有:

    TranslateModule.forRoot({
  loader: { provide: TranslateLoader, useClass: CustomLoader }
})

我的翻译在./assets/i18n/,都是json。任何人都知道我需要改变什么,所以装载机会找到我的翻译?

1 个答案:

答案 0 :(得分:0)

试试这个

export function HttpLoaderFactory(http: Http) {
  return new TranslateHttpLoader(http, "./assets/i18n/locale-", ".json");
} 

然后

TranslateModule.forRoot({
      loader: {
        provide: TranslateLoader,
        useFactory: HttpLoaderFactory,
        deps: [Http]
      }
    })