FullCalendar multiMonthYear视图同天起始事件未显示,是否为Bug?
FullCalendar multiMonthYear视图部分事件不显示的解决方案
问题现象
- 使用
multiMonthYear视图展示日历,出现部分事件未渲染的异常:- 三个事件均起始于
2024-01-15,其中两个为跨日事件(至2024-01-20),一个为单日事件 - 跨日事件中的event 1完全未显示
- 尝试给单日事件添加结束日期后,问题仍未解决
- 三个事件均起始于
可行解决方法
1. 确保事件ID唯一性
FullCalendar会以id作为事件的唯一标识,重复ID会导致事件被覆盖。检查并修正所有事件的id字段:
events: [ { id: 'event-1', title: 'Event 1', start: '2024-01-15', end: '2024-01-20' }, { id: 'event-2', title: 'Event 2', start: '2024-01-15', end: '2024-01-20' }, { id: 'event-3', title: 'Event 3', start: '2024-01-15' } ]
2. 调整事件重叠渲染配置
multiMonthYear视图默认的重叠处理逻辑可能隐藏部分事件,通过以下配置强制允许重叠并调整排序规则:
// 允许事件重叠显示 eventOverlap: true, // 按标题排序,确保所有事件都能被渲染 eventOrder: 'title'
3. 升级FullCalendar至最新稳定版
该问题大概率是特定版本的渲染Bug,升级到官方最新版可修复多数已知的视图渲染异常。
4. 规范单日事件的结束日期格式
FullCalendar的结束日期为排他性设置,单日事件需显式设置结束日期为次日:
{ title: 'Event 3', start: '2024-01-15', end: '2024-01-16' }
内容的提问来源于stack exchange,提问作者user23246985
相关产品推荐
相关产品推荐

