В этом ответе показано, как включите EXDATE в параметр формата строки в FullCalendar.
Но FullCalendar предоставляет удобную альтернативу длинной строке. Вместо этого они позволяют использовать объект. К сожалению, их документация на самом деле не охватывает ничего, кроме этого:
Свойство rrule принимает все, что принимает библиотека rrule для нового RRule. См. Документы. Вы можете указать строку или объект.
События, которые мы используем, уже довольно тяжелые, и я бы хотел избежать добавления дополнительных сложностей, которые потребовали бы написания какого-то сопоставителя для генерации этой строки.
Я хотел бы знать, как можно исключить список дат из правила повторения, используя формат объекта.
Я пробовал предоставить объект даты на конкретную дату. Я пробовал предоставить строку ISO. Я пробовал включать их в массив.
Обновлять
Это последняя итерация, которую я пробую:
...
const rruleSet = new RRuleSet();
rruleSet.rrule(new RRule(options));
// Repeat every day except on Nov 22, 2019
rruleSet.exdate(new Date(Date.UTC(2019, 10, 22)));
event.duration = {
seconds: event.event_length,
};
event.rrule = rruleSet.toString();
...
Это отображает повторяющиеся даты (время немного отличается), но дата, которую я пытаюсь исключить, все еще отображается.