设置fullcalendar事件的结束将覆盖start

时间:2014-12-16 14:53:48

标签: fullcalendar momentjs

当您将外部项目放到fullcalendar上时,它会自动设置事件的开始日期,但结束时间为空。所以我想要的是将结束时间设置为2小时后。

eventReceive: function(event){
    event.end = event.start;
    console.log(event.start.format()); // 2014-12-14T07:00:00 
    event.end.add(2, 'h');
    console.log(event.start.format()); // 2014-12-14T09:00:00 
    ...

当我尝试这样做时,event.start设置为与event.end完全相同

修改forceEventDuration解决,但仍然很好奇为什么会这样做?

1 个答案:

答案 0 :(得分:0)

event.startobject。您正在传递对象引用,而不是值。要了解这在javascript中是如何工作的,请执行以下操作:

var x = {"a": 10}
var y = x
y["a"] = 5
console.log(x)

这将返回{"a": 5},因为您更改了引用的对象。在传递对象之前,您需要先创建对象的副本(克隆)。