jer*_*rry 13 internationalization angular-cli angular
我们最近决定为我们的应用程序支持多种语言(Angular 13.x)。经过研究,我们决定使用看起来angular/localize
非常适合我们需求的包。
一切似乎都在解决唯一的问题,即在后续的构建和更改中保持翻译文件最新。
因此,按照 Angular 网站https://angular.io/guide/i18n-common-translation-files上的指南,我们使用ng extract-i18n
cli 工具生成messages.xlf
文件
ng extract-i8n --format xlf --output-path src/locale/
下一步是将生成的内容复制messages.xlf
到支持的不同区域设置。为简单起见,假设我们支持法语,因此我们messages.fr.xlf
在同一子/locale
文件夹中创建一个。这由第三方服务翻译(尚未确定如何自动化 - 欢迎提出建议)。到目前为止,一切都很好..
现在的问题是围绕组件的后续更改和新翻译的添加。将使用新的和修改后的翻译ng extract-18n
正确生成。messages.xlf
但是如何更新/合并其他语言环境文件messages.fr.xlf
而不覆盖现有更改?如何实现自动化并将新更改合并到该文件中?我是否缺少 Angular cli 已经支持的东西?
我遇到过这个xliffmerge
工具https://github.com/martinroob/ngx-i18nsupport/tree/master/projects/xliffmerge但这似乎是一个旧工具,似乎不支持 Angular 过去 9 的新版本+。
我假设这对每个人来说都是一个相当普遍的问题,并且 Angular CLI 是否已经支持这个问题。
当前版本 Angular 13.x
感谢您的帮助。
dan*_*-sc 12
替代/新的解决方案(针对未维护的 ngx-i18nsupport)是https://github.com/daniel-sc/ng-extract-i18n-merge
安装后通过
ng add ng-extract-i18n-merge
Run Code Online (Sandbox Code Playgroud)
翻译将被提取并与命令合并:
ng extract-i18n
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3187 次 |
最近记录: |