我正在尝试将法语设置为Angular App中的全球环境。
遵循文档,这就是我在app.module.ts中所做的:
import { registerLocaleData } from '@angular/common'
import localeFr from '@angular/common/locales/fr'
registerLocaleData(localeFr, 'fr-FR')
在自定义管道中,我想使用@angular/common
的formatDate
,但需要locale
参数。有什么方法可以获取我注册的语言环境?
我还尝试过提供LOCALE_ID
({ provide: LOCALE_ID, useValue: 'fr-FR' }
(,但是在不注射它的情况下,我似乎无法使用它。在这种情况下,我不确定使用registerLocaleData()
是否相关?(如果是的话,我想了解原因(
顺便说一句,我不想在构造函数中注入DatePipe
,因为我只需要使用formatDate
,这会使我的单位测试更加复杂。
尝试导入localeFrExtra
并将其与寄存器函数一起使用:
import { registerLocaleData } from '@angular/common';
import localeFr from '@angular/common/locales/fr';
import localeFrExtra from '@angular/common/locales/extra/fr';
registerLocaleData(localeFr, 'fr-FR', localeFrExtra);
来自角文档:
@angular/common/Locales中的文件包含您需要的大多数语言环境数据,但是一些高级格式化选项只能在额外数据集中可用,您可以从 @angular/common/common/locals/extair中导入。发生错误消息会在这种情况下通知您。