Использование Renderevent для добавления будущих событий fullcalendar - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь добавить событие на следующий месяц, используя:

var myEvent = {
  title:"my new event",
  start: $.fullCalendar.moment('2020-05-28T13:00'),
  end: $.fullCalendar.moment('2020-05-28T13:55')
};
$('#calendar').fullCalendar( 'renderEvent', myEvent );

Кажется, оно не прилипает.

Я пытался использовать демо из документации https://fullcalendar.io/docs/v3/renderEvent-demo но, похоже, и там не работает.

Есть ли способ сделать это или это ограничение?

Ответы [ 2 ]

1 голос
/ 28 января 2020

Согласно документации renderEvent , вы можете дополнительно указать третий параметр с именем stick. Документы говорят следующее:

Обычно событие исчезает, когда календарь перезагружает источники событий (например, при нажатии на предыдущий / следующий). Однако, указав stick как true, вы навсегда закрепите событие в календаре.

, поэтому

$('#calendar').fullCalendar( 'renderEvent', myEvent, true );

должно решить вашу проблему.

1 голос
/ 28 января 2020

При навигации по fullCalendar для повторного получения событий, вам нужно установить третьим параметрам значение true, которое будет сохранять добавленное событие при навигации.

Вот простая демонстрация https://codepen.io/nasser-ali-karimi/pen/VwYNdbj?editors=0010

$(function() {

  $('#calendar').fullCalendar({
    defaultView: 'month',
    header: {
      center: 'addEventButton'
    },
    customButtons: {
      addEventButton: {
        text: 'add event...',
        click: function() {
            $('#calendar').fullCalendar('renderEvent', {
              title:"my new event",
              start: "2020-02-09T07:00",
              end: "2020-02-09T07:50"
            } , true  );

        }
      }
    }
  });
});
...