繁体   English   中英

分配泛型函数以在Typescript中进行委托

[英]Assigning generics function to delegate in Typescript

我无法在Typescript(1.8)中编译此简单代码段

function test<T>(a: string, input: T): T {
    return input
} 

const xyz: (a: string, b: number) => number = test<number>

我有一个接受委托的函数,但是将泛型函数转换为该委托格式需要我执行以下额外步骤:

const xyz: (a: string, b: number) => number = (a,b) => test<number>(a,b)

...对我来说似乎并不理想。 任何想法为什么这不起作用,或者是否有另一种语法可以实现相同目的?

您根本不需要通用约束,这可以做到:

const xyz: (a: string, b: number) => number = test;

操场上的代码

编译器根据您为变量明确定义的类型将通用约束推断为数字。
另一种方法是:

const xyz = test as (a: string, b: number) => number;

操场上的代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM