假设我有这些类型
/** Types of a function's arguments */
export type ArgumentTypes<F extends Function> = F extends (...args: infer A) => any ? A : never;
export type ExcludeQueryParams<T> = { [P in keyof T]: T[P] extends PagingParameters ? never : T[P] }
Run Code Online (Sandbox Code Playgroud)
然后我有这段代码来提取函数的参数类型
function test(query: PagingParameters, as: number, f: string) {
return 1;
}
type argTypes = ArgumentTypes<typeof test>
type result = ExcludeQueryParams<argTypes>
Run Code Online (Sandbox Code Playgroud)
上面,argTypes 将等于 [PagingParameters, number, string]
我想要做的是PagingParameters从数组中提取类型 so resultis [number, string],但是使用ExcludeQueryParams结果是[never, …
typescript ×1