Fullcalendar v5在单击按钮时删除所有事件



我想在点击按钮后删除fullcalendar v5中的所有事件,下面的代码运行良好

calendar.addEventSource([
{
title: 'Business Lunch',
start: '2020-04-03T01:00:00',
},
]);

但是,单击按钮后,我如何删除/清除/删除所有事件?旧版本的fullcalendar有这种方法

calendar.fullCalendar( 'removeEvents', []);

v5怎么样?我尝试了下面的代码,但它给了我一个错误remove is not a function。我甚至试过calendar.refetchEvents();,但都没用。

$('.button').click(function(event) {
calendar.remove();
});

Fullcalendar v5删除所有事件

calendar.removeAllEvents();

必须在事件源实例上调用。使用getEventSources。

removeEvents = calendar.getEventSources();
removeEvents.forEach(event => {
event.remove();
});

@tta&莱安德罗·拉扎雷蒂:

答案很好!我一直在寻找这个,两者都有效,但我发现了它们之间的一个重要区别:

calendar.removeAllEvents(); // This will NOT clear the events source array

removeEvents = calendar.getEventSources();
removeEvents.forEach(event => {
event.remove(); // this will clear 
});

您可以通过以下操作查看:

removeEvents = calendar.getEventSources();
removeEvents.forEach(event => {
event.remove();
});

calendar.addEventSource('yourSourceHere');
var e = calendar.getEventSources();
console.log(e);

相关内容

  • 没有找到相关文章

最新更新