Moment.js datepicker不接受我的约会

时间:2017-07-31 14:19:23

标签: reactjs momentjs material-ui

我目前正在使用React.js开展项目。 我正在使用material-ui datepicker,我阻止除了即将到来的14个日期之外的所有日期。我想要的是每周四我在我的日期选择器中获得14个新日期。

我应该将beginningOfWeekendOfWeek添加到我的maxDateminDate,但它目前无效,我可以&# 39;弄清楚如何做到正确。

它在日志中键入了正确的答案,但是当我按下日期选择器时,我收到错误并且调试器说:

TypeError: d2.getFullYear is not a function at monthDiff

我做错了什么?

我已将此示例用于我自己的代码。 How to get the date ranges of a given week number in JS

这是我的代码:

var moment = require('moment');
const w = moment().weekday();
const daysToSubtract = (w + 3)%7;
const beginningOfWeek = moment(new Date()));
const endOfWeek = moment(new Date()).add(-daysToSubtract, 'days');

console.log(beginningOfWeek.format('MM/DD/YYYY h:mm a'), 
endOfWeek.format('MM/DD/YYYY h:mm a'))
<div className="center-container">
    <DatePicker hintText={newdate} mode="landscape" maxDate={endOfWeek} 
                minDate={beginningOfWeek}/>
</div>

1 个答案:

答案 0 :(得分:1)

我这样解决了这个问题。我将maxDate更改为maxDate = {new Date(endOfWeek)} /&gt;

const moment = require('moment');
const w = moment().weekday();
const daysToSubtract = ((w + 3 + Math.floor(hours/16)))%7 ;
const beginningOfWeek = moment().add(-daysToSubtract, 'days');
const endOfWeek = moment().add(14-daysToSubtract, 'days');

console.log(beginningOfWeek);
console.log(endOfWeek);

<div className="center-container">
    <DatePicker hintText={newdate} mode="landscape" minDate={new 
                Date()} maxDate = {new Date(endOfWeek)}/>
</div>