fullcalendar@4.0.0alpha.2将新事件与事件源相关联

时间:2018-10-17 11:01:45

标签: angular typescript fullcalendar

Fullcalendar会在缓存中保留一个新创建的事件,尽管它明确声明如果附加了Event Source对象则不会。

From recent release docs:

  

addEvent:删除了stick参数,改为使用source参数。以后获取此源时,将删除动态事件。不指定来源等同于将stick设置为true。 因此,默认情况下,事件会持续发生

Fullcalendar Example of usage:

calendar.addEvent( event [, source ] )

  

'source'表示您要与此事件关联的事件源。它可以是字符串事件源ID或事件源对象。重新获取源时,它将在获取之前从内部缓存中清除动态添加的事件。此参数是可选的。

因此,在附加源时,新添加的事件应与该源关联,并继承属性吗?目前还没有...

我的代码:

日历元素

this.calendar = new Calendar(this.calendarEl, {
  // options... 
  eventSources: [
    {
      id: 'internal',
      color: '#ff4202',
      events: (fetchInfo, successCallback, failureCallback) => {
        // Get events in updated weekly range.
        this.eventService.getEvents(fetchInfo.start.valueOf(), fetchInfo.end.valueOf(), moment().utcOffset())
          .subscribe((events: Array<Event>) => successCallback(events),
            error => failureCallback(error));
        },
    }
  ],
}

添加事件

this.eventService.createEvent(data)
   .subscribe(response => {
      this.calendar.addEvent(response['event'], ['internal']); // <-- What I am requested to do
   }

点击新创建的事件以获取其EventAPI数据,就会发现:

source: null

使用events中的CalendarOptions函数单击预提取的事件时,会显示

source: EventSourceApi(源对象)

我找不到错误的地方。如果可以确定它是错误,那么我将其转发。

谢谢您的帮助

0 个答案:

没有答案