#javascript #fullcalendar #fullcalendar-scheduler
Вопрос:
Я пытаюсь использовать представление временной шкалы, чтобы иметь удобный и простой интерфейс для переноса события на данный месяц (я могу работать с логикой дня месяца). Проблема, которая у меня есть, заключается в том, что я теперь застрял в данном году:
В этом примере я хочу перетащить событие обратно в декабрь 2021 года.
Если я чего-то не упускаю, невозможно показать более 12 месяцев. Если бы я мог, по крайней мере, показать предыдущий декабрь и следующий январь, я мог бы запустить повторный рендеринг представления после удаления события, а затем снова перетащить.
Есть какие-нибудь предложения о том, как это реализовать? У меня отбрасывающий обратный вызов работает просто отлично — просто, кажется, не могу найти простой способ
Ответ №1:
Создав пользовательское представление с помощью различных настроек представления, вы можете установить продолжительность временной шкалы практически на любой желаемый промежуток времени.
Вот пример, который показывает 2 года за раз:
views: {
resourceTimelineYears: {
type: 'resourceTimeline',
duration: { years: 2 },
buttonText: '2 Years',
slotDuration: { months: 1 }
}
},
Демо: https://codepen.io/ADyson82/pen/mdMeLbJ
(Примечание.Этот код предполагает, что вы используете FullCalendar 5. x, хотя аналогичный код работал бы и в более ранних версиях.)
Комментарии:
1. Это отвечает на мой вопрос, но теперь я осознал непредвиденные последствия. Слоты для месяцев теперь очень малы — есть ли настройка, обеспечивающая минимальную ширину?
2. Не совсем. Насколько мне известно, это в какой-то степени зависит от общей ширины календаря.
3. А, хорошее решение. Я совсем забыл об этих новых домах, они могли бы помочь