泛型函数未定义多态

时间:2018-10-20 09:42:18

标签: typescript polymorphism

假设我的泛型类型具有很多参数

type Func<TOut, T1,T2,T3,T4> = (a:T1, b:T2, c:T3, d:T4) => TOut

使用时:

let myFunc: Func<number, number | undefined, string | undefined, boolean | undefined, MyObject | undefined> = (a?,b?,c?,d?) => { // do something here }

是否存在将其定义得更短的快捷方式?

因为我可能也想这样做(没有其他未定义的方法):

let myOtherFunc: Func<number, boolean, boolean, string> = (k,l,m,n) => { // do something here }

并定义

 type Func<TOut, T1,T2,T3,T4> = (a:T1 | undefined, b:T2 | undefined, c:T3 | undefined, d:T4 | undefined) => TOut

不是解决方案,根本无法正常工作

0 个答案:

没有答案