使用打字稿从数组中提取除第一个之外的所有元素类型
Use typescript to extract all element type(s) from array except first
说我有类型
type MyTypeArray = ['', 2, boolean]
当数组的长度未知时,如何提取类型 2 | boolean
?
您可以推断所有元素,但首先。使用 spread tuple
运算符:...
,就像普通的 javascript
type ExtractTail<T extends any[]> = T extends [infer _, ...infer Tail] ? Tail : never
// [2, boolean]
type MyTypeArray = ExtractTail<['', 2, boolean]>
// 2 | boolean
type Union = MyTypeArray[number]
说我有类型
type MyTypeArray = ['', 2, boolean]
当数组的长度未知时,如何提取类型 2 | boolean
?
您可以推断所有元素,但首先。使用 spread tuple
运算符:...
,就像普通的 javascript
type ExtractTail<T extends any[]> = T extends [infer _, ...infer Tail] ? Tail : never
// [2, boolean]
type MyTypeArray = ExtractTail<['', 2, boolean]>
// 2 | boolean
type Union = MyTypeArray[number]