可以通过设置DatePicker/RangePicker的disabledDate属性来限制可用日期范围,进而达到隐藏前/后几个月的日期的效果。具体代码实现如下:
import { DatePicker } from 'antd';
import moment from 'moment';
function disabledDate(current) {
// 隐藏前一个月和后一个月的日期
return current && (
moment().subtract(1, 'months').endOf('month').add(1, 'days').isBefore(current)
||
moment().add(1, 'months').startOf('month').subtract(1, 'days').isAfter(current)
);
}
RangePicker同理,设置方式也是一样的。