javascript - 如何国际化 ng-bootstrap 日期选择器?
问题描述
在我的项目中,我使用ng-bootstrap datePicker。我的 datePicker 小部件非常简单:DEMO。
但我需要将他的国际化(需要设置俄语)。请帮我。
js:
import {Component} from '@angular/core';
import {NgbDate, NgbCalendar} from '@ng-bootstrap/ng-bootstrap';
@Component({
selector: 'ngbd-datepicker-range',
templateUrl: './datepicker-range.html',
styles: [``]
})
export class NgbdDatepickerRange {
hoveredDate: NgbDate;
fromDate: NgbDate;
toDate: NgbDate;
constructor(calendar: NgbCalendar) {
this.fromDate = calendar.getToday();
this.toDate = calendar.getNext(calendar.getToday(), 'd', 10);
}
onDateSelection(date: NgbDate) {
if (!this.fromDate && !this.toDate) {
this.fromDate = date;
} else if (this.fromDate && !this.toDate && date.after(this.fromDate)) {
this.toDate = date;
} else {
this.toDate = null;
this.fromDate = date;
}
}
isHovered = (date: NgbDate) => this.fromDate && !this.toDate && this.hoveredDate && date.after(this.fromDate) && date.before(this.hoveredDate);
isInside = (date: NgbDate) => date.after(this.fromDate) && date.before(this.toDate);
isRange = (date: NgbDate) => date.equals(this.fromDate) || date.equals(this.toDate) || this.isInside(date) || this.isHovered(date)
}
解决方案
您可以简单地使用:
import { LOCALE_ID } from '@angular/core';
import { registerLocaleData } from "@angular/common";
import localeRo from "@angular/common/locales/ro";
import localeRoExtra from "@angular/common/locales/extra/ro";
registerLocaleData(localeRo, "ro", localeRoExtra);
然后在 @NgModule 装饰器中使用提供者:
providers: [{ provide: LOCALE_ID, useValue: "ro-RO"}]
没有必要NgbDatepickerI18n
!
Angular for 德语的一个工作示例ngbdatepicker
在 stackblitz 上:
https ://stackblitz.com/edit/angular-mezpyn-b6tm1r?file=app%2Fdatepicker-popup.module.ts
推荐阅读
- python - 谁能帮我如何导入模块类?
- installation - 如果不安装 FTDI 驱动程序,是否可以部署依赖于它的应用程序?
- r - 删除面板数据集中两个 ID 值之间的行
- redis - Redis 会从 EXISTS 调用中返回过期的键吗?
- c# - WPF scaleX 和 scaleY 动画
- php - 使用存储在 laravel 中公共文件夹之外的外部 css/js 文件
- php - 我正在尝试使用 laravel 默认身份验证功能从我的旧数据库中使用我的 bcrypt 密码登录,但它不起作用
- php - Synology DS916 NAS 中安装 Composer,无法使用 ZIP 命令
- excel - 附加 ActiveWorkbook 后如何在电子邮件中插入 Outlook 签名?
- python - 使用 AWS CloudFormation 引用创建 yaml