【问题标题】:Disable specific date on React-datepicker在 React-datepicker 上禁用特定日期
【发布时间】:2021-05-06 07:38:43
【问题描述】:

你好吗? 这是我在 Stack Overflow 上的第一篇文章,我有一个问题,希望你们中的某个人能帮助我。

我正在做一个项目,以前的开发人员为这个项目使用了一个 react 数据选择器,项目经理想保留它,但我想禁用一些日期。 我想要做的是提供一个禁用日期列表,例如我想禁用 2021 年 5 月 1 日和 2021 年 6 月 4 日。

数据选择器是这个:https://reactnicedates.hernansartorio.com/

他们只展示了如何在一周内禁用某个日期,例如所有星期六,但我不知道如何禁用许多日期。

【问题讨论】:

  • 您可以在修饰符属性中添加自定义禁用方法。在他们网站上的示例中,他们使用disabled: date => getDay(date) === 6, // Disables Saturdays 作为示例禁用所有星期六,但您可以编写另一个检查来禁用您喜欢的任何日期
  • 感谢您的回复,您能否告诉我您是否要停用 2 个日期,例如您是如何操作的?

标签: javascript reactjs react-redux datepicker


【解决方案1】:

您可以像下面那样制作自定义修饰符并将其传递给数据选择器

const [disabledDates, setDisabledData] = useState(['01/05/2021', '04/06/2021']);

const modifiers = {
  disabled: date => disabledDates.includes(date) // assuming date variable have same format as 'dd/mm/yyyy'
}

注意:- 记得检查两个日期的格式。如果格式与条件不同将不起作用。

【讨论】:

  • 感谢您的帮助,但即使我将日期设置为相同的格式,它也不起作用.. const [disabledDates, setDisabledData] = useState([new Date(2021, 5, 1 ).getTime(), new Date(2021, 5, 4).getTime()]); const 修饰符 = { disabled: (date) => { disabledDates.includes(date.getTime()) } }
  • 您能否在代码框示例中分享更多代码,以便我们更好地查看?
  • 这里我更新了正确的日期格式,你可以检查这个代码框:codesandbox.io/s/react-nice-dates-xstio?file=/src/App.js
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-02-13
  • 2017-07-31
  • 1970-01-01
  • 1970-01-01
  • 2012-04-02
  • 2010-10-15
  • 1970-01-01
相关资源
最近更新 更多