如何在不继承NgbDatepickerI18n的情况下为Angular中的NgbDatepicker进行翻译?

时间:2019-04-05 14:44:15

标签: angular ng-bootstrap angular-i18n ngb-datepicker

我目前正在阅读ng-bootstrap组件的国际化情况。他们的文档中提到了日期选择器:

  

由于2.0.0发布日期选择器将在以下情况下使用应用程序区域设置:   它用于获取工作日和月份名称的翻译。的   进行翻译的内部服务称为NgbDatepickerI18n,   您可以根据需要提供自己的实现。

(ng-bootstrap website)

查看Angular i18n文档,它指出:

  

如果要导入其他语言的语言环境数据,则可以这样做   手动:

     

src / app / app.module.ts

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

// the second parameter 'fr' is optional
registerLocaleData(localeFr, 'fr');

(Angular website)

但是为什么它对我不起作用?我仍然需要对NgbDatepickerI18n进行自定义实现,还是缺少某些功能?


这是一个示例游乐场:

https://stackblitz.com/edit/angular-mezpyn?file=app%2Fdatepicker-popup.module.ts

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,因为没有答案,这是解决方案:

在导入并注册区域设置数据后,您需要在app.module.ts中添加

providers: [
    { provide: LOCALE_ID, useValue: 'fr-FR' },
    ... other providers
],

我认为文档没有明确说明。