Я пытаюсь получить данные json из API на кнопках next / prev со следующим кодом, но он не работает во второй раз, когда мы нажимаем кнопку, мой код выглядит следующим образом
var calendarEl = document.getElementById('calendar');
$scope.calendarObj = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'interaction', 'dayGrid', 'timeGrid','interactionPlugin' ],
header: {
left: 'prev,next, today',
center: 'title',
right: 'timeGridDay,timeGridWeek,dayGridMonth'
},
// defaultDate: '2020-06-18', if null, it will fetch current day.
nextDayThreshold: '00:00:00',
slotDuration: '00:15:00',
defaultView: 'timeGridDay',
lazyFetching : false,
navLinks: true, // can click day/week names to navigate views
selectable: true,
selectMirror: true,
select: function(arg) {
var title = prompt('Event Title:');
if (title) {
$scope.calendarObj.addEvent({
title: title,
start: arg.start,
end: arg.end,
allDay: arg.allDay
})
}
$scope.calendarObj.unselect()
},
editable: true,
eventLimit: true, // allow "more" link when too many events
events: function(start, end, callback) {
fetchEventsByDate(start.start,start.end) // used to call json api and fetch the data
},
dateClick: onEmptySlotClick,
});
$scope.calendarObj.render();
В методе fetchEventsByDate я вызвал следующий метод для отображения данных в календаре.
$scope.refresh_events = function () {
var eventSources = $scope.calendarObj.getEventSources();
var len = eventSources.length;
for (var i = 0; i < len; i++) {
console.log(eventSources[i])
eventSources[i].remove();
}
$scope.calendarObj.addEventSource( $scope.events );
$scope.calendarObj.render();
};
, но он не работает. может, пожалуйста, кто-нибудь направит меня, где я делаю это неправильно.