我有一些util方法,我想知道是否有一种方法可以将参数从一个方法复制到另一个方法。我当时在玩typeof
并尝试以这种方式键入第二个函数,但我不太清楚。
declare function foo(a: number, b: string): number;
现在,我希望类型bar
具有foo
的参数,但不具有返回类型,例如,假设它调用foo但不返回任何内容:
const bar = (...args) => { foo(...args); }
现在我可以声明bar
与foo
具有完全相同的类型:
const bar: typeof foo = (...args) => { foo(...args); }
,但返回类型现在不匹配。那我该怎么办:
typeof foo
获得的返回类型答案 0 :(得分:1)
内置Parameters类型
declare function foo(a: number, b: string): number;
type fooParameters = Parameters<typeof foo>;
declare const bar: (...parameters: fooParameters) => void;
// inferred as const bar: (a: number, b: string) => void