TypeScript中带泛型的箭头函数语法
大家好!我是TypeScript新手,一直搞不清楚需要使用泛型时箭头函数的语法。
在普通函数中,我这样写——一切正常:
```typescript
function identity(arg: T): T {
return arg;
}
```
但当我尝试对箭头函数做同样的事情时,TypeScript会报错。我试过几种写法:
```typescript
// 写法1 - 报错
const identity = (arg: T): T => arg;
// 写法2 - 也不行
const identity = (arg: T): T => arg;
// 写法3 - 在JSX中报错
const identity = (arg: T): T => arg;
```
特别是在React组件中使用JSX时,我完全搞混了。当我在JSX中写 `` 时,TypeScript会认为这是一个JSX元素,而不是泛型。如何在TypeScript中正确声明带泛型的箭头函数?对于普通TypeScript和JSX文件(.tsx),语法有区别吗?
提前感谢帮助!