假设我的泛型类型具有很多参数
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
不是解决方案,根本无法正常工作