我有一个使用 react-calendar 的预订网站,它使用当前日期启动,以便在打开应用程序时显示今天的日期。我使用钩子来做到这一点:
const [chosenDate, setDate] = useState(setFirstDate(new Date()));
function setFirstDate(d) {
if (moment(d).day() === 6 || moment(d).day() === 0) {
return (moment(d).add(1, "weeks").isoWeekday(1).toDate());
} else {
return new Date();
}
}
return(
<Calendar
minDate={new Date()}
maxDate={new Date(moment().add(1, "M"))}
value={chosenDate}
onChange={setDate}
next2Label={null}
prev2Label={null}
locale="sv"
minDetail="month"
tileDisabled={({ date }) => date.getDay() === 6 || date.getDay() === 0}
/>
)
上传到 Heroku 时,它在第一天运行良好,但从第二天开始,它就卡在了部署日期。有趣的部分是代码方面,它似乎仍然知道今天的日期是什么,我已经测试过了。此外,当您移到另一个月然后返回时,它会获得正确的日期。
这是一个显示问题的视频: https ://imgur.com/FayY8R4 (在视频中,当前日期是 3 月 16 日,但部署日期是 3 月 15 日。
有没有人对可能导致这种情况的原因有任何想法?除了使用另一个日历库并重新设置所有内容之外,我已经尝试了所有方法。