如何省略数组类型中的元素,例如Parameters<T>?

Kev*_* Lu 2 typescript

例如,假设make是在其他地方定义的函数。

create(...args: Parameters<typeof make>): ReturnType<typeof make> {
    return make(firstArgument, ...args);
}
Run Code Online (Sandbox Code Playgroud)

我可以封装什么Parameters<typeof make>来省略其数组类型的第一个元素,以便我可以将create的签名定义为 的其余参数make

kay*_*ya3 10

尝试这个:

type OmitFirst<T extends any[]> = T extends [any, ...infer R] ? R : never
Run Code Online (Sandbox Code Playgroud)

OmitFirst<Parameters<typeof make>>然后您可以在函数的签名中使用。

游乐场链接