我如何首先为 JSON 文件使用两个翻译器,然后为 firestore 使用第二个翻译器?
How can I use two translators first for JSON file and second for firestore?
JSON 文件方法
export function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
JSON 文件加载器
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
}
}),
AngularFirestore 方法
export function FirestoreTranslationsLoaderFactory(db: AngularFirestore) {
return new FirestoreTransLoader(db);
}
AngularFirestore 文件加载器
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: FirestoreTranslationsLoaderFactory,
deps: [AngularFirestore]
}
}),
注意:我不能同时使用两个我尝试合并一个方法和加载器。
好像我已经在评论区回复你了:
I think that storing theoretically one piece of data separately in two places is not the best idea.
但是如果你需要类似的东西,你可以使用 MissingTranslationHandler
就像我在这里所做的那样:
https://github.com/Mr-Eluzive/angularfire-ngx-translate-example/tree/missing-translation-handler
您可以查看此分支和主分支之间的差异,以熟悉必须做些什么才能使其正常工作。
JSON 文件方法
export function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
JSON 文件加载器
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
}
}),
AngularFirestore 方法
export function FirestoreTranslationsLoaderFactory(db: AngularFirestore) {
return new FirestoreTransLoader(db);
}
AngularFirestore 文件加载器
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: FirestoreTranslationsLoaderFactory,
deps: [AngularFirestore]
}
}),
注意:我不能同时使用两个我尝试合并一个方法和加载器。
好像我已经在评论区回复你了:
I think that storing theoretically one piece of data separately in two places is not the best idea.
但是如果你需要类似的东西,你可以使用 MissingTranslationHandler
就像我在这里所做的那样:
https://github.com/Mr-Eluzive/angularfire-ngx-translate-example/tree/missing-translation-handler
您可以查看此分支和主分支之间的差异,以熟悉必须做些什么才能使其正常工作。