【发布时间】:2021-11-16 15:44:19
【问题描述】:
我在我的 Angular 应用程序中设置正确的语言环境时遇到了麻烦。 根据文档,我已将以下 sn-p 添加到我的 angular.json 文件中。
"projects": {
"appname": {
...,
"i18n": {
"sourceLocale": "nl-NL"
},
在我的app.module.ts 中,我添加了以下内容。
providers: [
{
provide: LOCALE_ID,
useValue: "en-GB"
}
]
但是,当我使用 datePipe 来格式化这样的日期时...
<p>{{ '2021-11-16' | date : 'longDate' }}</p>
结果是November 16, 2021,但我期待16 November 2021
好像en-GB 的语言环境部分被完全忽略了。
当我将angular.json 中的sourceLocale 设置为en-GB 时,它确实有效,但大多数时候我的应用程序将是荷兰语。
我觉得我错过了什么。角度文档没有那么有用。我发现文档使用 ISO 639-2 代码作为 LOCALE_ID,它完全省略了语言环境部分。见https://angular.io/guide/i18n-optional-manual-runtime-locale 还有其他文档确实使用了 unicode 语言环境 ID,请参阅 https://angular.io/api/core/LOCALE_ID
总之。它没有按预期工作。
【问题讨论】:
标签: angular internationalization