【发布时间】:2014-01-17 19:22:07
【问题描述】:
我有两个接口:IEvent 和 IWorkflowResizedEvent,它们扩展了第一个接口。
interface IEvent {
add?(listener: ()=> void): void;
remove?(listener: ()=> void): void;
trigger?(...a: any[]): void;
}
interface IWorkflowResizedEvent extends IEvent {
add(listener:(args: WorkflowResizedEventArgs) => void): void;
remove(listener:(args: WorkflowResizedEventArgs) => void ): void;
trigger(args: WorkflowResizedEventArgs): void;
}
interface WorkflowResizedEventArgs {
}
我收到一个错误:
接口“IWorkflowResizedEvent”不能扩展接口“IEvent”: “IWorkflowResizedEvent”类型的属性“触发器”类型和 'IEvent' 不兼容:类型的调用签名 '(args: WorkflowResizedEventArgs) => void' 和 '(...a: any()) => void' 是 不兼容:调用签名需要 0 个或更少的参数。
我之前使用了一些旧版本的TypeScript 库,这段代码运行良好......现在我已将库更新为最新版本,问题开始了。我发现整个语言规范发生了如此强烈的变化......
有人知道这里出了什么问题吗?看起来应该没问题。
【问题讨论】:
标签: javascript typescript