要让Typescript推断间接函数的参数类型,可以通过以下几种方法:
function indirectFunc(param: any) {
// ...
}
function myFunc(input: number) {
indirectFunc(input as string);
}
在这个示例中,参数input的类型为number,但在调用indirectFunc时使用了类型断言,将参数类型指定为string。
function indirectFunc<T>(param: T) {
// ...
}
function myFunc(input: number) {
indirectFunc(input);
}
在这个示例中,通过在indirectFunc函数声明中使用泛型T,使得Typescript可以根据myFunc函数中的input参数类型来推断T的类型。
function indirectFunc(param: string) {
// ...
}
function myFunc(input: string) {
indirectFunc(input);
}
在这个示例中,参数input的类型为string,直接调用的indirectFunc函数的参数类型也为string,Typescript可以根据直接函数的参数类型来推断间接函数的参数类型。
总结: 要让Typescript推断间接函数的参数类型,可以使用类型断言、泛型或者依赖于类型推断的方式。根据具体的场景选择合适的方法来推断参数类型。对于复杂的类型推断情况,可以使用上述方法的组合来实现。
领取专属 10元无门槛券
手把手带您无忧上云