问题 FullCalendar - 整天的活动太短了一天


我正在传递fullcalendar这样的事件:

{
     id: 31,
     title: 'Test',
     start: '2014-12-22',
     end: '2014-12-23',
     allDay: true
}

我希望在日历中找到一个跨越两天的活动,但事件只发生在 2014-12-22 插槽,不在 2014-12-23 一。 nextDayThreshold参数设置为 00:00:00,但根据文档,当allDay设置为true时,应忽略它。我确信allDay被正确解释,因为在议程视图中,事件出现在全天行中。

如何设置fullcalendar以在两天内显示此类事件?


11707
2017-12-22 14:11


起源



答案:


我认为这是一个有意识的设计决定,因为根据类似的讨论,所有结束日期都被认为是排他性的 这个 和 这个,即使是全天活动,您的结束日期不被视为已标记日期的包含(包含)。例如如果您的开始日期是 2015-03-01 00:00:00 和结束日期 2015-03-02 00:00:00 该 跨度 只有一天。

这似乎与之相吻合 版本2升级到使用moment.js。因此,您可能需要在结束日期添加'23:59:59',或者找到指定结束日期的其他方式,例如:作为开始日期的两天的持续时间?


5
2017-12-22 14:26



如果是这样的话,这是一个可怕的决定 - Eddie
如果时间添加到事件对象,您是否仍可以在月视图中调整事件的大小?调整大小和拖放也总是比显示的更多一天。我一直在摆弄,试图找到解决方案,但无济于事。 - JerryA
我也有这个问题。改变时间没有帮助,我实际上必须在结束日期添加+1天..这太荒谬但似乎有效。 - Aurelin
确实很荒谬......我正在使用这种日期格式 start: new Date(2016, 11, 27),,所以添加00:00:00时间不合适。我也为了显示目的增加了一天... - kneidels


答案:


我认为这是一个有意识的设计决定,因为根据类似的讨论,所有结束日期都被认为是排他性的 这个 和 这个,即使是全天活动,您的结束日期不被视为已标记日期的包含(包含)。例如如果您的开始日期是 2015-03-01 00:00:00 和结束日期 2015-03-02 00:00:00 该 跨度 只有一天。

这似乎与之相吻合 版本2升级到使用moment.js。因此,您可能需要在结束日期添加'23:59:59',或者找到指定结束日期的其他方式,例如:作为开始日期的两天的持续时间?


5
2017-12-22 14:26



如果是这样的话,这是一个可怕的决定 - Eddie
如果时间添加到事件对象,您是否仍可以在月视图中调整事件的大小?调整大小和拖放也总是比显示的更多一天。我一直在摆弄,试图找到解决方案,但无济于事。 - JerryA
我也有这个问题。改变时间没有帮助,我实际上必须在结束日期添加+1天..这太荒谬但似乎有效。 - Aurelin
确实很荒谬......我正在使用这种日期格式 start: new Date(2016, 11, 27),,所以添加00:00:00时间不合适。我也为了显示目的增加了一天... - kneidels


基于 eventDataTransform函数 如果您的活动是allDay,您可以添加1天。请注意,这只会影响渲染。

eventDataTransform: function(event) {                                                                                                                                
  if(event.allDay) {                                                                                                                                               
    event.end = moment(event.end).add(1, 'days')                                                                                                                 
  }
  return event;  
}                                                                                                                                                  

7
2018-06-06 07:50



我让这个工作,但仍然没有修复在月视图中调整大小或移动事件。 (即,当日历最初正确加载事件时,但是当移动或调整事件大小时,结束日期设置为一天,然后在视觉上表示)。 - JerryA