ng-bootstrap 日期选择器无法在选择之前设置默认日期



我正在使用ng-bootstrap日期选择器。 这是我用于日期选择器输入的 HTML

<input type="text"
id="datepicker{{i}}"
class="form-control"
formControlName="dateJoined"
ngbDatepicker
#incorporatedDatePicker="ngbDatepicker"
(click)="incorporatedDatePicker.toggle()"
(dateSelect)="onDateSelection($event)"
readonly>

但是,在从日期选择器本身中进行选择之前,我无法为此输入字段设置默认日期。

我在这里使用反应式表单,并且我已经将NgbDateStruct Date指定为表单值

const strDateTime = driver['JoinDate'];
const arr = strDateTime.split(' ');
const strDate = arr[0];
const dateArr = strDate.split('/');
const ngbDate: NgbDateStruct = {
year: dateArr[2],
month: dateArr[1],
day: dateArr[0],
}
this.addDriverForm.patchValue({
dateJoined: ngbDate
})

dateJoined控件的值应该是下一个结构:

this.dateJoined = new FormControl({
year: 2020,
month: 5,
day: 16,
});

您需要验证所有道具都是数字,而不是字符串。

const ngbDate: NgbDateStruct = {
year: parseInt(dateArr[2], 10),
month: parseInt(dateArr[1], 10),
day: parseInt(dateArr[0], 10),
}

你也可以使用 NgbDate 类对象

const defaultDate = new NgbDate(
sDate.getFullYear(),
sDate.getMonth() + 1,
sDate.getDate()
);

相关内容

  • 没有找到相关文章

最新更新