Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 用泛型定义混合类型_Typescript - Fatal编程技术网

Typescript 用泛型定义混合类型

Typescript 用泛型定义混合类型,typescript,Typescript,在Typescript中,可以声明如下接口: 接口Foo{ x:数字:布尔值; 条形图:=>空白; } 这意味着Foo类型的东西是一个接受数字并返回布尔值的函数,还有一个方法栏。我想做完全相同的事情,但我希望函数类型是泛型的,如下所示: 接口Foo{ T 条形图:=>空白; } 这意味着一个带有方法栏的T型函数,但它不起作用。我如何才能做到这一点?您正在寻找交叉口类型: type Foo<T> = T & { bar: () => void };

在Typescript中,可以声明如下接口:

接口Foo{ x:数字:布尔值; 条形图:=>空白; } 这意味着Foo类型的东西是一个接受数字并返回布尔值的函数,还有一个方法栏。我想做完全相同的事情,但我希望函数类型是泛型的,如下所示:

接口Foo{ T 条形图:=>空白; }
这意味着一个带有方法栏的T型函数,但它不起作用。我如何才能做到这一点?

您正在寻找交叉口类型:

type Foo<T> = T & { bar: () => void };