Fullcalendar:如何在时间轴视图中显示明年的下两个月
Fullcalendar: How to show next two month of next year in timeline view
我正在使用 Fullcalendar,我需要使用 timeline
视图显示所有当前年份以及下一年的下两个月。
如果我以这种方式使用 visibleRange
选项:
visibleRange: function (currentDate) {
return {
start: currentDate.year()+'-01-01',
end: currentDate.year()+1 + '-02-28',
};}
日历显示正确的时期,但导航按钮 'next' 停止工作。
我也尝试使用 duration
选项,但我不知道如何设置 "start" 期间....日历总是从当前日期开始。
我认为有一个解决方案不需要编写完整的自定义视图。
此问题的解决方案涉及设置 dateIncrement
值 - 这会告诉 next/prev 按钮距离 increase/decrease 可见日期有多远,当您像这样自定义视图范围时。
举个例子。 N.B。我使用了 momentJS 的内置函数,而不是字符串连接,来提供一种更强大、更简洁的设置可见范围的方法。将 slotDuration 设置为不会产生大量长日历的内容可能也是一个好主意。我以 1 个月的持续时间为例,但显然您可以根据需要配置它。
$('#calendar').fullCalendar({
schedulerLicenseKey: 'GPL-My-Project-Is-Open-Source',
defaultView: 'timeline',
header: {
left: 'prev,next today',
center: 'title',
right: 'timeline'
},
slotDuration: { months: 1 },
dateIncrement: { years: 1 },
visibleRange: function (currentDate) {
return {
start: currentDate.clone().startOf('year'),
end: currentDate.clone().startOf('year').add({ years: 1, months: 2}),
};
},
//...etc
});
dateIncrement 设置记录在此处:https://fullcalendar.io/docs/current_date/dateIncrement/
我正在使用 Fullcalendar,我需要使用 timeline
视图显示所有当前年份以及下一年的下两个月。
如果我以这种方式使用 visibleRange
选项:
visibleRange: function (currentDate) {
return {
start: currentDate.year()+'-01-01',
end: currentDate.year()+1 + '-02-28',
};}
日历显示正确的时期,但导航按钮 'next' 停止工作。
我也尝试使用 duration
选项,但我不知道如何设置 "start" 期间....日历总是从当前日期开始。
我认为有一个解决方案不需要编写完整的自定义视图。
此问题的解决方案涉及设置 dateIncrement
值 - 这会告诉 next/prev 按钮距离 increase/decrease 可见日期有多远,当您像这样自定义视图范围时。
举个例子。 N.B。我使用了 momentJS 的内置函数,而不是字符串连接,来提供一种更强大、更简洁的设置可见范围的方法。将 slotDuration 设置为不会产生大量长日历的内容可能也是一个好主意。我以 1 个月的持续时间为例,但显然您可以根据需要配置它。
$('#calendar').fullCalendar({
schedulerLicenseKey: 'GPL-My-Project-Is-Open-Source',
defaultView: 'timeline',
header: {
left: 'prev,next today',
center: 'title',
right: 'timeline'
},
slotDuration: { months: 1 },
dateIncrement: { years: 1 },
visibleRange: function (currentDate) {
return {
start: currentDate.clone().startOf('year'),
end: currentDate.clone().startOf('year').add({ years: 1, months: 2}),
};
},
//...etc
});
dateIncrement 设置记录在此处:https://fullcalendar.io/docs/current_date/dateIncrement/