运行NG Build生成PWA解决方案后,找不到transloc转换的i18n文件。我找过文件指向的位置,但没有找到。
正确的url是http://localhost/mydomain/assets/i18n/en-US.json

transloco-root.module.ts配置
import { HttpClient } from '@angular/common/http';
import {
TRANSLOCO_LOADER,
Translation,
TranslocoLoader,
TRANSLOCO_CONFIG,
translocoConfig,
TranslocoModule
} from '@ngneat/transloco';
import { Injectable, NgModule } from '@angular/core';
import { environment } from '../environments/environment';
@Injectable({ providedIn: 'root' })
export class TranslocoHttpLoader implements TranslocoLoader {
constructor(private http: HttpClient) {}
getTranslation(lang: string) {
return this.http.get<Translation>(`./assets/i18n/${lang}.json`);
}
}
@NgModule({
exports: [ TranslocoModule ],
providers: [
{
provide: TRANSLOCO_CONFIG,
useValue: translocoConfig({
availableLangs: ['en-US', 'pt-BR'],
defaultLang: 'en-US',
fallbackLang: 'en-US',
missingHandler: {
useFallbackTranslation: true,
logMissingKey: false
},
reRenderOnLangChange: true,
prodMode: environment.production,
})
},
{ provide: TRANSLOCO_LOADER, useClass: TranslocoHttpLoader }
]
})
export class TranslocoRootModule {}发布于 2021-02-21 00:20:41
为了解决这个问题,我将i18N文件设置为相对路径,并且运行良好。

https://stackoverflow.com/questions/66218114
复制相似问题