【发布时间】:2020-07-06 06:22:28
【问题描述】:
const enum Tag {
Friday = 'Friday',
Planning = 'Planing',
}
const test = (tag: Tag, todo:/* ??? */): string => {/* some logic */}
当tag 是Tag.Friday 时,todo 应该是(tour: string) => string
当tag 是Tag.Planning 时,todo 应该是(date: Date) => string
我尝试了函数可区分联合和函数重载,两者都无法推断出todo 类型。 TS Playground
【问题讨论】:
标签: typescript overloading discriminated-union