反应日期选择器设置的最小和最大日期

时间:2020-02-16 18:14:41

标签: javascript reactjs react-datepicker

我在项目中使用react-datepicker。
我只需要显示特定月份的天数(例如2020年2月)。我的印象是我可以将iso日期作为minDate和maxDate传递,但这似乎不起作用。

我的代码:

   const DatePickerMod = () => {
    const [startDate, setStartDate] = useState(null);
  return (
    <DatePicker
      selected={startDate}
      onChange={date => setStartDate(date)}
      minDate={'02-01-2020'}
      maxDate={'02-29-2020}
      placeholderText="Select a date in February 2020"
    />
  );
  };

3 个答案:

答案 0 :(得分:2)

将您的日期(使用该格式)作为字符串传递给new Date()实例,如下所示:

 <DatePicker
    selected={startDate}
    onChange={date => setStartDate(date)}
    minDate={new Date("02-01-2020")}
    maxDate={new Date("02-29-2020")}
    placeholderText="Select a date in February 2020"
/>

答案 1 :(得分:1)

var myElement = document.getElementById('simple-bar'); new SimpleBar(myElement, { autoHide: false }); minDatemaxDate个对象,而不是Date

String

MDN Date

React DatePicker Documentation

答案 2 :(得分:0)

如果您只想使用输入类型日期字段,请遵循此

在你的渲染中像这样使用。

<input type="date" name="DOB"  min={minDate} max={today} />

并像这样在js中声明一些变量

var today = new Date();
var dd = today.getDate();
var mm = today.getMonth() + 1; //January is 0 so need to add 1 to make it 1!
var yyyy = today.getFullYear();

if (dd < 10) {
    dd = '0' + dd
}

if (mm < 10) {
    mm = '0' + mm
}

today = yyyy + '-' + mm + '-' + dd;
var minDate = "1993-05-25"

这将帮助您避免任何外部安装