问题描述
Angular CLI:10.2.0 节点:12.14.1 操作系统:win32 x64
\\Angular: 10.1.6
\\... common,compiler,compiler-cli,core,forms
\\... language-service,localize,platform-browser
\\... platform-browser-dynamic,router
\\Ivy Workspace: Yes
Package Version
@angular-devkit/architect 0.13.10
@angular-devkit/build-angular 0.1001.7
@angular-devkit/build-optimizer 0.13.10
\\@angular-devkit/build-webpack 0.1001.7
@angular-devkit/core 10.2.0
@angular-devkit/schematics 10.2.0
@angular/animations 10.2.1
\\@angular/cdk 10.2.6
@angular/cli 10.2.0
@angular/http 7.2.16
@angular/material 7.3.7
\\@ngtools/webpack 10.2.0
@schematics/angular 10.2.0
@schematics/update 0.1002.0
\\rxjs 6.6.3
typescript 4.0.5
上面提到的是我对 Angular 10 的配置。
我们最近从 Angular 7 升级到了 Angular 10。 我们的项目支持 4 种不同的语言环境,我们通过以下命令处理本地化。
"extract-i18n": "ng xi18n \\projectName --i18n-format \\xlf --output-path assets/locale --i18n-locale && ng run \\projectName:xliffmerge"**
这在 Angular 7 中运行良好。但现在它已停止为我们工作并给出错误
ERROR: language "C:\Users \\centraluser\source\repos\FinxFrontend2\node_modules@ngx-i18nsupport\ngx-
i18nsupport \\xliffmerge \\xliffmerge" is not valid ERROR: language
"C:\Users \\centraluser\source\repos\FinxFrontend2\node_modules@ngx-i18nsupport\ngx-
i18nsupport \\xliffmerge\xliffmerge" is not valid ERROR: i18nFile \\messages.xlf is not readable
解决方法
检查这个工具https://www.codeandweb.com/babeledit/tutorials/how-to-translate-your-angular9-app-with-xlf-files
我在更新到 Angular 11 时遇到了与您相同的问题,似乎不再支持 xliffmerge 工具并且 Github 存储库中没有更新。 Babel 的翻译程序会合并您输入的 xlf 文件,建立您可以根据需要翻译成多种语言的主要语言,并且始终对主要语言执行字符串提取。