有日历
<ngb-datepicker #dp
[(ngModel)]="models"
(navigate)="date = $event.next"
[markDisabled]="isDisabled"
(click)="sendAddDate($event)">
</ngb-datepicker>
[markDisabled] = "isDisabled"负责屏蔽ts中的日期范围。帮助写法isDisabled
我得到一个带有日期范围数组的 json 文件,格式如下:
[{StartDate: <'DD.MM.YYYY>', EndDate: '<DD.MM.YYYY>'}, ...]
功能isDisabled- 您需要插入一个数组(如下所示,以便阻止其中的所有日期)
tripsDate: [{ StartDate: '', EndDate: '' }] =
[{StartDate: '', EndDate: ''}];
isDisabled = (date: NgbDate) =>
date.month == 6 && date.day >= 13 && date.day <= 22;
我修复了这段代码,但它不起作用
isDisabled = (date: NgbDate) => {
for(const d of this.tripsDate) {
// Если попали в интервал, то возвращаем true
let x = new Date(d.StartDate)
let y = new NgbDate(x.getFullYear(),x.getMonth(),x.getDay())
let z = new Date(d.EndDate)
let w = new NgbDate(z.getFullYear(),z.getMonth(),z.getDay())
if (date.after(y) && date.before(w)) {
return true;
}
}
return false;
}
借助NgbDate 类的这些功能