我创建了以下接口函数重载打字稿:如何定义重载函数类型
interface IRequestObservableDelegate {
(url: string | Request, options?: RequestOptionsArgs): Observable<Response>;
(url: string | Request, body?: string, options?: RequestOptionsArgs): Observable<Response>;
}
我的想法是类型以上的接口函数传递给另一个函数
function DoSomething(cb:IRequestObservableDelegate,someCondition:boolean):void;
下面的代码工作
const f1 = (u,o) => obsrevable; // dummy function
DoSomething(f1,somecond);
但是,这并不工作
const f2 = (u,b,o) => obsrevable; // dummy function
DoSomething(f2,somecond);
不知道如何当你提供的界面任何你试图给该接口必须匹配所有的呼叫签名的多个呼叫签名定义重载函数类型
请告诉我制作这两个选项和身体可选的目的,但随后将它们定义两次?您可以使用第二个定义,该定义也适用于第一个示例调用。 – Wernerson