2

我决定为翻译实现自定义加载器,因为我有一个问题是在加载器加载正确的翻译之前要翻译字符串。我按照 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。任何人都知道我需要更改什么以便加载程序找到我的翻译吗?

4

1 回答 1

1

尝试这个

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

接着

TranslateModule.forRoot({
      loader: {
        provide: TranslateLoader,
        useFactory: HttpLoaderFactory,
        deps: [Http]
      }
    })
于 2017-09-14T15:01:55.870 回答