0

我有一个使用 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 日。

有没有人对可能导致这种情况的原因有任何想法?除了使用另一个日历库并重新设置所有内容之外,我已经尝试了所有方法。

4

0 回答 0