【问题标题】:how to translate angular datePipe's dates with moment.js?如何用 moment.js 翻译角度 datePipe 的日期?
【发布时间】:2022-02-07 17:35:33
【问题描述】:

我有这个版本的包:

"@angular/cdk": "^11.2.13",
"@ngx-translate/core": "^13.0.0",
"@angular/material-moment-adapter": "^12.2.9",
"moment": "^2.29.1",
"@types/moment": "^2.13.0",

我使用的是角度 datePipe | date: 'MMM d, y' 格式,即 mediumDate。我想把它翻译成其他语言。例如,而不是 Jun 15, 2015 ,我想成为 'ივნ 15,2015"。

shared.module.ts

export function culture() {
    const locale = localStorage.getItem('culture');
    return locale ? locale.substr(0, locale.indexOf('-')) : 'ka';
}
 providers: [
        { provide: MAT_DATE_LOCALE, useValue: culture() },
        { provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },
        { provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS }
    ]

app.module.ts

moment.locale(culture());

我还使用有角度的材料日期选择器,它会翻译。

【问题讨论】:

    标签: angular momentjs angular11 date-pipe angular-date-format


    【解决方案1】:

    我在共享模块中添加了

    import ka from '@angular/common/locales/ka';
    registerLocaleData(ka);
    providers: [
       DatePipe,
    ]
    

    并添加根据 currentLanguage 转换日期的 alseo 本地化日期管道。

    有解决办法链接solution

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-29
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多