我用的是 全历我想用我的本地模型代替fullcalendar的模型,当我试图为我自己的模型创建新的实例时,它说:"'DateInput'类型的参数不能分配给'Date'类型的参数。
'DateInput'类型的参数不能分配给'Date'类型的参数。
下面是我的 event.model.ts
:
export class EventModel {
public eventId: string;
public eventName: string;
public eventStart: Date;
constructor(
eventId: string,
eventName: string,
eventStart: Date
)
{
this.eventId = eventId;
this.eventName = eventName;
this.eventStart = eventStart;
}
}
这里是全历法启动。
import { EventInput } from '@fullcalendar/core';
使用方法。
private events: EventInput[] = [
{ id: "1", title: 'Test', start: new Date() }
];
getEvent(id: string) : EventModel {
var event = this.events.find(x => x.id === id);
if (event) {
EventModel model = new EventModel(event.id, event.title, event.start); //the event.start Throws error!
}
}
感谢@jonrsharpe评论的见解。
即使 EventInput
的start属性已经用简单的 start: new Date()
:
private events: EventInput[] = [
{ id: "1", title: 'Event Now', start: new Date() }
];
负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: 负责人: EventInput
类的样子。
export interface EventDateInput {
start?: DateInput;
//rest of properties.
}
DateInput
是:
export type DateInput = Date | string | number | number[];
所以,一个简单的铸造解决它。
EventModel model = new EventModel(event.id, event.title, <Date>event.start);