我使用的是Translate,我必须编写自己的加载器,因为默认加载器基于httpClient。我的解决方案有效,项目启动并且语言更改。所以一切都很好。不幸的是,当我尝试构建时ng build my-lib --prod
出现错误。我想这和json有关吗?(角度9)。
custom-loader.ts
import { TranslateLoader } from '@ngx-translate/core';
import { Observable, of } from 'rxjs';
import * as en from '../../../lib-assets/i18n/en.json';
import * as pl from '../../../lib-assets/i18n/pl.json';
export class CustomTranslateLoader implements TranslateLoader {
constructor(private availableLang: any = { en, pl }) {}
getTranslation(lang: string): Observable<any> {
return of(this.availableLang[lang].default);
}
}
tsconfig.json
"resolveJsonModule": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
之后的错误 ng build my-lib --prod
:
ERROR: Can't resolve all parameters for CustomTranslateLoader in /Projects/my-app/projects/my-lib/src/lib/core/translate/custom-loader.ts: (?).
An unhandled exception occurred: Can't resolve all parameters for CustomTranslateLoader in /Projects/my-app/projects/my-lib/src/lib/core/translate/custom-loader.ts: (?).
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句