看起来你自从 Angular 5 的重大更改以来就没有更新你的管道了 参见: https://github.com/angular/angular/blob/master/CHANGELOG.md
预定义格式(short、shortTime、shortDate、medium 等)现在使用 CLDR 给定的模式(就像在 AngularJS 中一样),而不是来自 intl API 的模式。您可能会注意到一些更改,例如对于 en-US,shortDate 将变为 8/15/17 而不是 8/15/2017。
时代的狭窄版本现在是 GGGGG 而不是 G,格式 G 现在类似于 GG 和 GGG。
时区 Z 现在将输出 ISO8601 基本格式,例如 +0100,您现在应该使用 ZZZZ 来获取 GMT+01:00。
同时,您需要在app.module中提供您的语言,如下所示:
我已更新 app.module.ts 以便本地化日期。
// app.mudule.ts
...
import { NgModule, LOCALE_ID } from '@angular/core';
import { registerLocaleData } from '@angular/common';
import localeRu from '@angular/common/locales/ru';
registerLocaleData(localeRu);
@NgModule({
...
providers: [
...
{ provide: LOCALE_ID, useValue: 'ru' }
],
bootstrap: [AppComponent]
})
// feed-list-item.component.html (nothing was updated here)
...
<span>{{ event.date | date:'fullDate'}}</span>
...
快速解决:为您的区域设置添加导入。 对于“ru”语言,您应该在app.module中添加以下行:
import '@angular/common/locales/global/ru';