【问题标题】:DatePicker ant design - disable the current/todays dateDatePicker ant design - 禁用当前/今天日期
【发布时间】:2019-12-04 18:31:54
【问题描述】:

如何使用 Ant Design 库中的 DatePicker 禁用当前/今天的日期?我需要将默认日期向后移动一天(我成功地做到了)并禁用当天和未来的所有日子。我真的很接近,除了我似乎无法禁用当前/今天?你不能那样做吗?

这就是我正在尝试的?

private disabledDate = (current) => {
    return current && current >= moment().endOf('day');
}
....
<DatePicker
    defaultValue={moment().subtract(1, 'day')}
    value={moment(this.state.reportPeriod, dateFormat)}
    format={'MMM D, YYYY'}
    disabledDate={this.disabledDate}
    onChange={this.selectDate}
/>

【问题讨论】:

    标签: reactjs datepicker


    【解决方案1】:

    Ant Designs 示例页面在 codepen 上有一个这样的示例。它们的功能可以在下面找到(假设您尝试禁用今天和过去的几天。如果您正在寻找今天和未来,只需使用 &gt; 而不是 &lt;

    function disabledDate(current) {
      // Can not select days before today and today
      return current && current < moment().endOf('day');
    }
    

    编辑:所以禁用今天和所有未来日期的功能是:

    function disabledDate(current) {
      return current && current > moment().startOf('day');
    }
    

    【讨论】:

    • 哎呀,我应该澄清一下,我需要禁用包括今天在内的所有未来日期
    • 我更新了我的答案以说明这些额外数据。请注意,我还将时刻调用更改为 startOf('day'),现在回想起来,这可能是您代码中唯一真正的问题。
    • 这在表面上是有道理的,但在我这边,你仍然可以选择今天作为日期
    猜你喜欢
    • 2021-07-02
    • 2011-10-24
    • 1970-01-01
    • 1970-01-01
    • 2012-06-22
    • 1970-01-01
    • 2019-04-25
    • 2017-08-21
    • 1970-01-01
    相关资源
    最近更新 更多