Typescript引入了对JSX语法的支持.因此,我有一个表达,它与传统的*很好地结合.ts文件,但不带*.tsx系列:

const f = <T1>(arg1: T1) => <T2>(arg2: T2) => {
   return { arg1, arg2 };
}

我想知道有没有办法让它在*内工作.tsx文件?

推荐答案

为了让它理解它是一个类型参数而不是JSX元素,可以在类型参数后添加逗号:

const f = <T1,>(arg1: T1) => <T2,>(arg2: T2) => {
   return { arg1, arg2 };
};

或者可以使用函数表达式:

const f = function<T1>(arg1: T1) {
    return function<T2>(arg2: T2) {
        return { arg1, arg2 };
    };
};

或者,在这种情况下,这是可行的:

const f = <T1, T2>(arg1: T1) => (arg2: T2) => {
   return { arg1, arg2 };
};

Typescript相关问答推荐

创建一个将任意命名类型映射到其他类型的TypScript通用类型

带有联合参数的静态大小数组

webpack错误:模块找不到.当使用我的其他库时,

contextPaneTitleText类型的参数不能分配给remoteconfig类型的关键参数'""'''

创建一个根据布尔参数返回类型的异步函数

如何以Angular 形式显示验证错误消息

诡异的文字类型--S为物语的关键

如何将v-for中的迭代器编写为v-if中的字符串?

ANGLE订阅要么不更新价值,要么不识别价值变化

如何创建由空格连接的多个字符串的类型

将对象的属性转换为正确类型和位置的函数参数

当数组类型被扩展并提供标准数组时,TypeScrip不会抱怨

TypeScrip-如何自动推断UNION变量的类型

类型实例化过深,可能是无限的&TypeScrip中的TupleUnion错误

如何在Nextjs路由处理程序中指定响应正文的类型

为什么类型脚本使用接口来声明函数?他的目的是什么.

使用 fp-ts 时如何使用 TypeScript 序列化任务执行?

元素隐式具有any类型,因为string类型的表达式不能用于索引类型{Categories: Element;管理员:元素; }'

对象只能使用 Typescript 中另一个对象的键

使用 TypeScript 在 SolidJS 中绘制 D3 力图