1

我在 CalendarList 中使用 react-native-calendars 的 CalendarList 组件我根据下面显示的条件设置了 pastScrollRange 和 futureScrollRange

    const [showNextMonth, setShowNextMonth] = useState<number>(1)
    const [showPrevMonth, setShowPrevMonth] = useState<number>(1)

    useEffect(() => {
        setShowPrevMonth(moment(today).month() + 1 > moment(startDateToBeShown).month() + 1 ? 1 : 0)
        setShowNextMonth(moment(today).month() + 1 < moment(endDateToBeShown).month() + 1 ? 1 : 0)
    }, [startDateToBeShown, endDateToBeShown])

并使用 CalendarList 如下

    <CalendarList
        ref={calendarRef}
        current={today}
        calendarHeight="auto"
        theme={calTheme}
        firstDay={1}
        dayComponent={generateDayComponent}
        monthFormat={'MMMM'}
        hideExtraDays={true}
        markedDates={formattedMergedDays}
        futureScrollRange={showNextMonth}
        pastScrollRange={showPrevMonth}
        maxDate={endDateToBeShown}
        scrollEnabled={true}
    />

我只为 pastScrollRange 屏幕截图收到的错误附在下面。根据当前条件和日期计算的 pastScrollRange 值将为 1。使用此当前实现,我遇到了错误。但是,如果我在上述效果中手动将 pastScrollRange 值设置为 1,那么我将不会收到错误消息。

   setShowPrevMonth(1)

在此处输入图像描述

在使用状态中,如果我对两者都使用默认值 0,那么我也会收到错误。如果库文件中的控制台初始值 0 对它们都适用。请帮我解决问题。

4

0 回答 0