antd日期选择器,只允许选当前时刻之前的时间

range = (start, end) => {
    const result = [];
    for (let i = start; i < end; i++) {
      result.push(i);
    }
    return result;
  }; 

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

  disabledDateTime = (date) => {
    const hour = moment().hour();
    const minute = moment().minute();
    const second = moment().second();
    if (date && moment(date).date() === moment().date()) {
      return {
        disabledHours: () => this.range(hour + 1, 24),
        disabledMinutes: (selectedHour) =>
          selectedHour >= hour ? this.range(minute + 1, 60) : [],
        disabledSeconds: (selectedHour, selectedMinute) =>
          selectedHour >= hour && selectedMinute >= minute
            ? this.range(second + 1, 60)
            : []
      };
    }
    return {
      disabledHours: () => [],
      disabledMinutes: () => [],
      disabledSeconds: () => []
    };
  };
<FormItem label="签离时间">
   {getFieldDecorator('time', {
       initialValue: undefined,
   })(<DatePicker 
       showTime 
       disabledDate={this.disabledDate}
       disabledTime={this.disabledDateTime}
/>)}</FormItem>    

 

posted @ 2022-09-05 11:17  rachelch  阅读(403)  评论(0编辑  收藏  举报