Я использую библиотеку Fullcalendar в своем проекте react. Когда я меняю month next / prev, api вызывается несколько раз

#reactjs #fullcalendar

#reactjs #полный календарь

Вопрос:

Я использую библиотеку Fullcalendar в своем проекте react. Когда я меняю month next / prev, api вызывается несколько раз.

Ниже приведен мой код, и вот как я импортирую fullcalendar

         <FullCalendar
                          plugins={[
                            dayGridPlugin,
                            timeGridPlugin,
                            interactionPlugin,
                            googleCalendarPlugin,
                          ]}
                          headerToolbar={{
                            left: "prev,next today",
                            center: "title",
                            right: "dayGridMonth,timeGridWeek,timeGridDay",
                          }}
                          contentHeight="auto"
                          initialView="dayGridMonth"
                          editable={true}
                          selectable={true}
                          selectMirror={true}
                          dayMaxEvents={true}
                          weekends={true}
                          select={(e) => handleaddEventShow(e, false)}
                          eventClick={(e) => handleaddEventShow(e, true)}
                          events={(
                            fetchInfo,
                            successCallback,
                            failureCallback
                          ) =>
                            getCalendarData(
                              fetchInfo,
                              successCallback,
                              failureCallback
                            )
                          }
                        />
  

Комментарии:

1. пожалуйста, добавьте весь код, который выглядит так, как будто в нем чего-то не хватает

2. «api вызывается несколько раз». … вы имеете в виду конкретно API, из которого вы извлекаете свои данные о событиях? Если это так, то это сделано намеренно. Предполагается, что ваш API каждый раз возвращает события только для текущего диапазона дат в представлении. Диапазон дат предоставляется вам через аргументы обратного вызова. Смотрите fullcalendar.io/docs/events-function для получения дополнительной информации

3. Я сталкиваюсь с аналогичной проблемой. в dateClick prop у меня есть функция, которая устанавливает состояние для 3 состояний, и API вызывается ровно 3 раза. Даже нажатие кнопки закрытия <Dialog/> (Material UI) повторно извлекает событие.