Fullcalendar updateEvent неправильно отображает событие

1

Я использую метод updateEvent для обновления события "на лету" в режиме недели.

$('#calendar').fullCalendar( 'updateEvent', event);

Он отлично работает. Если я обновляю дату события (он отлично перемещается по всем слотам allDay). Но если я изменяю время начала и окончания существующего события, я не вижу это событие после updateEvent (что означает, что обновленное событие исчезло)

Я вижу объект события в консоли

start: Object, end: null, // For the old event. Object is moment, converted by fullcalendar
start: '2017-02-14T07:00:00', end: '2017-02-14T08:00:00' // Updated date and time

Итак, я четко определяю дату и время. Я понятия не имею, почему он не работает. Любое предложение?

Теги:
momentjs
fullcalendar

1 ответ

0

Я решил проблему.

Я попытался удалить старое событие с помощью removeEvents и создал новое событие, вызвав renderEvents. Еще одна проблема.

Затем я попытался удалить все свойства, начинающиеся с _ из объекта события, и он работал, когда я удалил source объект из fullcalendar's.

source документа автоматически заполняется, и это ссылка на источник события, из которого это событие исходило.

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

Вот мой код.

$('.calendar').fullCalendar('removeEvents', oldEvent._id);
delete oldEvent._id;
delete oldEvent._allDay;
delete oldEvent._start;
delete oldEvent._end;
delete oldEvent.source;
$('.calendar').fullCalendar('renderEvent', oldEvent, true);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню