不使用 object
与 interface
或者完整的函数定义,函数的参数是否可以在 Typescript 中的其他地方用作类型,就像 ReturnType<T>
一样在其他地方使用返回类型作为类型定义?我想像InputType
这样的用法或ParamType
为此。
出于上下文目的,请看以下示例:
const x = (y: string, z: string) => ({[y+z]: 3})
要使用该函数的结果( {string: number}
)作为类型,我们可以这样做 ReturnType<typeof x>
,但是输入参数可以用作对象类型( {y: string, z: string}
),还是 JS 的 Array-like 的限制?结构( [string, string]
)与这个概念冲突吗?用例是向下传递参数的容器。
最佳答案
TypeScript 3.1 引入了名为 Parameters
的类型,它正是这样做的。
type MyParams = Parameters<typeof x> // [string, string]
关于javascript - 在 Typescript 中获取参数作为类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54411846/