extract-i18n --output-path extracts in root folder



为了提取翻译,我将i18n与xliffmerge结合使用。 我在package.json中添加了extract-i18n命令,如下所示:

"extract-i18n": "ng extract-i18n project --i18n-format xlf --output-path src/locale --i18n-locale en-US && ng run project:xliffmerge"

angular.jsonxliffmergeOptions是:

"xliffmerge": {
"builder": "@ngx-i18nsupport/tooling:xliffmerge",
"options": {
"xliffmergeOptions": {
"format": "xlf",
"srcDir": "src/locale",
"genDir": "src/locale",
"defaultLanguage": "en-US",
"languages": [
"en-US",
"nl-NL"
]
}
}
}

每当我运行extract-i18n命令时,messages.xlf 文件仍然会导出到根文件夹而不是 src/locale。

我不知道为什么它没有导出到 src/locale 文件夹。

更新

从 Angular 11 升级到 Angular 12 后,此问题仍然存在。

我在package.json的脚本中配置ng extract-i18n时犯了运行的错误。相反,我应该使用npm run extract-i18n.

不过,这只能解决部分问题,因为不再支持--i18n-format--18n-locale(或者看起来如此)。

正确的命令应该是:

"extract-i18n": "ng extract-i18n [projectname] --format xlf --output-path src/locale && ng run [projectname]:xliffmerge"

由于 Angular 弃用了模式中的关键字"id",转而使用"$id",我不确定 xliffmerge 会继续工作多久,因为 ngx-i18nsupport 的开发几年前就停止了。


请使用此命令


extract-i18n --output-path src/locale
你没有定义路径,这就是为什么你面临问题你必须定义路径 现在生成XML文件的路径 一天我也在工作 i18n 如果您对 i18n 有任何疑问,请告诉我我会帮助你。

<小时 /> <小时 />

相关内容

  • 没有找到相关文章

最新更新