如何在fullCalendar中禁用事件跨度到另一天?

时间:2019-08-30 20:48:16

标签: javascript fullcalendar fullcalendar-3

我正在使用具有4种视图类型的fullcalendar 3.8.0:listWeek,month,archiveWeek,archiveDay,并尝试仅在listWeek视图中禁用长事件的重复,但是找不到设置或有效方法。

我试图为像选项之类的视图描述eventDataTransform函数(我们称事件-任务是因为我们有任务管理系统)

calendar.fullCalendar({
  views:{
    listWeek: {
        eventDataTransform: function(task) {
            task.start = task.date_start;
            console.log('listWeek');
            return task;
        },
    }
  }
...
})

,但是这种方式不起作用。 我也试图在eventDataTransform函数中设置条件

eventDataTransform: function(task) {
    task.start = task.date_start;
    if  (calendar.fullCalendar('getView').name !='listWeek')
    {
       task.end = task.date_end;
     }
    return task;
},

这似乎是可行的方法,但是...当我在活动月份后选择任何其他视图时,不会调用eventDataTransform。并且listWeek视图向我显示了几天之内的长事件的重复,直到我将日期范围更改为其他月份再返回。

因此,我只需要显示一次任务,就为listWeek创建的日期,以及其他视图的正常行为,因为用户的请求(使用此视图并由于认为它们重复= _ =“而最近删除了任务) 在示例中,我从eventDataTransform函数将当前view.name打印到控制台。

example

0 个答案:

没有答案