gpt4 book ai didi

javascript - 迁移到 Angular v9。 i18n 重大变化

转载 作者:行者123 更新时间:2023-12-01 16:10:35 31 4
gpt4 key购买 nike

我正在从 迁移一个 Angular 项目8.2.14 9.0.0-rc.14 .使用 i18n 进行本地化。

我按照这里的指南 https://update.angular.io/#8.2:9.0感觉还不错。升级后,我正在尝试运行该项目,但是
ng serve导致以下错误:

An unhandled exception occurred: An i18n locale ('en-US') cannot both be a source locale and provide a translation.
See "...my local logs path...\angular-errors.log" for further details.

angular-errors.log错误更详细:
[error] Error: An i18n locale ('en-US') cannot both be a source locale and provide a translation.
at createI18nOptions (...my project path...\node_modules\@angular-devkit\build-angular\src\utils\i18n-options.js:69:23)
at Object.configureI18nBuild (...my project path...\node_modules\@angular-devkit\build-angular\src\utils\i18n-options.js:100:18)
at process._tickCallback (internal/process/next_tick.js:68:7)

我有更多关于错误的详细信息:打开 @angular-devkit\build-angular\src\utils\i18n-options.js:69:23我看到以下逻辑:
if (locale === i18n.sourceLocale) {
throw new Error(`An i18n locale ('${locale}') cannot both be a source locale and provide a translation.`);
}

我有 en-US语言环境,我想继续将其用作翻译和来源。那么如何修复这个破坏性错误呢?

最佳答案

我假设您的默认语言与英语不同。
因此,您应该更改默认源“sourceLocale”,如 official docs 所示。 .

所以它会像:

"projects": {
"AngularApp": {
"i18n": {
"sourceLocale": "he-IL",
"locales": {
"en-US": "src/locale/messages.en.xlf"
}
},
...

关于javascript - 迁移到 Angular v9。 i18n 重大变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60093043/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com