我有一些效果
function(param1, { knownParam1, ...opts })
我想键入它以至少描述param1和knownParam1。我在想类似的东西:
type Param2 = {
knownParam1: string,
...otherParams: any
}
type Parameters = {
param1: string
param2: Param2
}
TypeScript支持这种概念吗?我感觉不是因为解构是一个新概念。
答案 0 :(得分:0)
是的,您可以通过以下方式实现您想要的东西:
type Param2 = {
knownParam: string;
[key: string]: unknown;
}
function myFn(param1: string, param2: Param2) {
const {
knownParam,
...opts
} = param2;
// ...
}
第二个参数的类型是一个对象,该对象的任何已知属性都与其他任何未知类型的属性相交。