xml - Angular i18n 拆分翻译文件
问题描述
我开始使用 i18n 方法翻译我的 Angular 应用程序,
因为翻译文件真的很长,而且不可读,我将来可能需要返回并更新它,我想拆分它,例如:
assets/
└── i18n/
├── users/
│ ├── en.json
│ └── fr.json
└── products/
├── en.json
└── fr.json
拆分不是每个组件,而是每个应用程序的上下文。
我怎样才能实现这种分裂?
解决方案
在您的情况下,我假设它是模块,您所要做的就是创建与模块(上下文)一样多的文件夹,在巫婆中,您将存储语言 files.json,然后调整您的 app.modules如下:
TranslateModule.forChild({
loader: {
provide: TranslateLoader,
useFactory: (createTranslateLoader),
deps: [HttpClient]
},
isolate: true
}),
ps:“隔离”对于能够重新实例化您的翻译模块很重要。
使用“createTranslateLoader”从正确的文件夹加载翻译文件的功能如下(例如用户):
export function createTranslateLoader(http: HttpClient) {
return new TranslateHttpLoader(http, './assets/i18n/users/', '.json');
}
你去吧:)
推荐阅读
- angular - Angular Service Worker 更新多个域
- xpath - IMPORTXML 公式的 2 个文本之间的 Xpath
- mysql - 错误 1227 (42000):访问被拒绝;您需要(至少一个)此操作的 SUPER 特权 - 在 AWS Lightsail Mysql DB 上
- node.js - npm 运行开发错误代码 ELIFECYCLE。似乎无法找出问题所在
- javascript - 消毒功能太卫生?
- r - 求取两个输入变量的函数的局部最大值,每个变量的区间不同
- python - 使用 pip2 安装 matplotlib 却返回了这样的错误
- ubuntu - Azure 上的 Lucee/Java 与 100% 的 CPU 使用率挂钩
- python-3.x - 如何使用用户的输入调用函数
- python - Python:当第一个数组被排序时,如何使第二个数组的索引与第一个数组的索引匹配?