'DateInput' 类型的参数不能分配给 'Date' 类型的参数
Argument of type 'DateInput' is not assignable to parameter of type 'Date'
我正在使用 fullcalendar,我想使用我的本地模型而不是 fullcalendar 的模型,当我尝试创建我自己的模型的新实例时,它说:
Argument of type 'DateInput' is not assignable to parameter of type
'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: new Date()
:
初始化
private events: EventInput[] = [
{ id: "1", title: 'Event Now', start: new Date() }
];
EventInput
class 看起来像:
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);
我正在使用 fullcalendar,我想使用我的本地模型而不是 fullcalendar 的模型,当我尝试创建我自己的模型的新实例时,它说:
Argument of type 'DateInput' is not assignable to parameter of type '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: new Date()
:
private events: EventInput[] = [
{ id: "1", title: 'Event Now', start: new Date() }
];
EventInput
class 看起来像:
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);