Antd+React DatePicker组件。部分日期/时间为可选(附:只能选择当前时间之后的时间点)

项目中用到的,需要限制时间控件的可选范围,以下代码为当前时间(到秒)之后的时间为可选时间。

  range = (start, end) => {
    const result = [];
    for (let i = start; i <= end; i++) {
      result.push(i);
    }
    console.log(result);
    return result;
  };
  disabledDate = (current) => {
    // 不能选今天和今天之前的日期
    return current && current < moment();
  };
  disabledDateTime = () => {
    let hours = moment().hours();//0~23
    let minutes = moment().minutes();//0~59
    //当日只能选择当前时间之后的时间点
    if (this.state.upgradeTime.date() === moment().date()) {
      return {
        disabledHours: () => this.range(0, hours),
        disabledMinutes: () => this.range(0, minutes),
      };
    }
  };
          this.setState({upgradeTime})}
            showTime={{defaultValue: moment(this.state.upgradeTime)}}
            disabledDate={this.disabledDate}
            disabledTime={this.disabledDateTime}
            format="YYYY-MM-DD HH:mm:ss"
            placeholder="选择时间"
          />

你可能感兴趣的:(Antd+React DatePicker组件。部分日期/时间为可选(附:只能选择当前时间之后的时间点))