Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.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,如何使用箭头函数编写“高级/嵌套”类型变量,如此函数声明中使用的T function wrapInObject<T>(key: string) { return (x: T) => ({ [key]: x }); } 函数wraponObject(键:字符串){ 返回(x:T)=>({[key]:x}); } 我试过/想做这样的事,但没有用 const wrapInObject = <T>(key: string) => (x: T) => ({

如何使用箭头函数编写“高级/嵌套”类型变量,如此函数声明中使用的
T

function wrapInObject<T>(key: string) {
  return (x: T) => ({ [key]: x });
}
函数wraponObject(键:字符串){
返回(x:T)=>({[key]:x});
}
我试过/想做这样的事,但没有用

const wrapInObject = <T>(key: string) => (x: T) => ({ [key]: x });
constwraponObject=(key:string)=>(x:T)=>({[key]:x});

如注释中所述,将通用箭头函数写入
tsx
文件时会发生错误。在
ts
中,问题中的语法很好

这是已知的
tsx
文件中的泛型限制,因为语法中存在歧义,这是有文档记录的。正如链接中所建议的,您可以通过向
T

const wrapInObject = <T extends {}>(key: string) => (x: T) => ({ [key]: x });
constwraponObject=(key:string)=>(x:T)=>({[key]:x});

您遇到了什么具体错误,我复制粘贴了您的代码并进行了编译,很可能应该包括,甚至应该查看一下。好像tsc认为我在写JSX