3

antd 框架上工作,我试图禁用小于给定 defaultDate 的DatePicker日期,我无法以任何方式正确处理。情况是说日期选择器的 defaultDate 是2028-12-20所有日期都应该在这个下面被禁用..

执行此操作的回调如下

disabledDate = (current) => {
    return current && current < moment().endOf('day');;
}

其中current = defaultDate已提供它不会改变,我不知道如何做到这一点..

我在这里创建了一个沙盒

任何帮助将不胜感激。

谢谢。

4

2 回答 2

8

可以通过以下方式完成:

disabledDate(current) {
  let customDate = "2018-11-25";
  return current && current < moment(customDate, "YYYY-MM-DD");
}

这是工作演示

于 2018-11-23T11:16:20.577 回答
1

此外,您可以通过启用可用的日期范围/时段来禁用日期。

npm install date-fns

添加或子天的包裹。

import {subDays, addDays } from 'date-fns'

最终代码

<DatePicker 
disabledDate={d => !d || d.isAfter(addDays( new Date(), 7)) || d.isSameOrBefore(subDays( new Date(), 1)) }/>

希望它有帮助。

于 2020-09-19T12:49:11.700 回答