antd RangePicker 设置禁用时间。 最长可以选择12个月

  

要的这种效果 , 要先设置一个monBegin这个 时间是我们选择框选择的时间。 从选择的时间开始 没有就设置一个默认的。

  const datadisabledDateMonth = current => {
    const time = monBegin  || moment().startOf('year')

    const result = moment().add(12, 'month') .diff(moment(time), 'month'); // 计算选中日期和今天之后29天的日期差

    const days = moment(time) > moment() ? result : 12;

    const startTime = time;
    
    const start = startTime && moment(startTime).subtract(days, 'month') > current;

    const end = monBegin&& moment(monBegin).add(days, 'month') < current;

    return monBegin? start || end : end;
 
  }

第二个是设置最长可以选择十四天

const datadisabledDate = current => {
    const time = disBegin || moment();
    const result = moment().add(13, 'days').diff(moment(time), 'days'); // 计算选中日期和今天之后29天的日期差

    const days = moment(time) > moment() ? result : 13;

    const startTime = time;
    const start = startTime && moment(startTime).subtract(days, 'days') > current;

    const end = disBegin && moment(disBegin).add(days, 'days') < current;

    return disBegin ? start || end : end;
  };

猜你喜欢

转载自blog.csdn.net/it_varlue/article/details/122625724