angular 区域设置 "XXX" 缺少区域设置数据

Missing locale data for the locale "XXX" with angular

我目前在“en-US”上这样定义“LOCALE_ID”:

@NgModule({
    providers: [{ provide: LOCALE_ID, useValue: "en-US" }, ...],
    imports: [...],
    bootstrap: [...]
})

而且效果很好。但是,为了测试日期在法语中的样子,我用“fr-FR”替换了“en-US”然后我得到了错误:

Missing locale data for the locale "fr-FR".

我做了一些研究,但没有找到与此相关的任何信息。默认包中是否包含法语语言环境?是不同的包吗?我必须自己创建它们吗?

请看一下 https://github.com/angular/angular-cli/issues/6683

这可能是你的情况

在文件中 app.module.ts

...
import { NgModule, LOCALE_ID } from '@angular/core';
import { registerLocaleData } from '@angular/common';
import localeFr from '@angular/common/locales/fr';
registerLocaleData(localeFr);


@NgModule({
  imports: [...],
  declarations: [...],
  bootstrap: [...],
  providers: [
    { provide: LOCALE_ID, useValue: 'fr-FR'},
  ]
})
export class AppModule {}

(来源:https://next.angular.io/guide/i18n

并在您的模板中 (*.component.html)

DATE in FRENCH: {{ dateEvent | date: 'longDate'}}

结果:

DATE in FRENCH: 25 mars 2018

(来源:https://angular.io/api/common/DatePipe

谢谢@Alan,你只是忘了这个:import { registerLocaleData } from '@angular/common';

完整代码:

import { registerLocaleData } from '@angular/common';
import localeFr from '@angular/common/locales/fr';
registerLocaleData(localeFr);

@NgModule({
  imports: [...],
  declarations: [...],
  bootstrap: [...],
  providers: [
    { provide: LOCALE_ID, useValue: 'fr-FR'},
  ]
})
export class AppModule {}