TypeScript 4.6.3中如何简化泛型函数特定类型版本的调用?
解决方法
在TypeScript 4.6.3中,直接写foo<boolean>会报错,是因为JavaScript语法里<会被解析成小于运算符,没法直接这么引用泛型函数的特定实例。可以用以下两种方式简化调用:
箭头函数包裹法
写一个箭头函数明确指定参数类型,TypeScript会自动推断出对应的泛型:const fooBool = (param: boolean) => foo(param);之后调用直接用
fooBool(true)就行,不用每次写泛型参数。类型断言法
先定义好特定类型的函数签名,再把原函数断言成这个类型:type FooBooleanFn = (param: boolean) => number; const fooBool = foo as FooBooleanFn;同样,后续调用
fooBool(false)就可以直接使用boolean版本的函数。
内容的提问来源于stack exchange,提问作者DarkTrick
相关产品推荐
相关产品推荐

