【发布时间】:2019-02-18 08:45:25
【问题描述】:
由于 TypeScript 允许高级类型定义,我想尝试很多这种方法,但并不像我想象的那么容易。
例如,我想有一种“向导一步一步”的方法:
function fillWizardOptions<T>() {
return <P extends T> (value: P) => {
return fillWizardOptions<Exclude<T, P>>();
}
}
所以每次我调用一个链式子函数时,我都想失去之前的选项,但是目前,Exclude 并没有像我预期的那样工作:
fillWizardOptions<string|number|boolean>()
('foo')
('bar');// Expect here of have only number|boolean, but I still have string|number|boolean
可能我错过了什么。
另外,如果有人知道我在哪里可以找到 playground 之类的 RegEx101
谢谢。
更新:忘记提及我使用的是 TypeScript 3.3.1
【问题讨论】:
标签: typescript typescript-typings