typescript手册目前没有关于箭头函数的内容。正常的功能 可以使用以下语法进行泛型: 例子:

function identity<T>(arg: T): T {
    return arg;
}

箭头函数的语法是什么?


当前回答

2021年,Ts 4.3.3

const useRequest = <DataType, ErrorType>(url: string): Response<DataType, ErrorType> 
   => {
      ...
   }

其他回答

2021年,Ts 4.3.3

const useRequest = <DataType, ErrorType>(url: string): Response<DataType, ErrorType> 
   => {
      ...
   }

这么晚了,但与ES6不需要扩展它仍然为我工作....:)

let getArray = <T>(items: T[]): T[] => {
    return new Array<T>().concat(items)
}

let myNumArr = getArray<number>([100, 200, 300]);
let myStrArr = getArray<string>(["Hello", "World"]);
myNumArr.push(1)
console.log(myNumArr)

我知道我回答这个问题有点晚了。但我想到了回答这个问题,以防其他人发现它有帮助。没有一个答案提到如何在异步箭头函数中使用泛型。

是这样的:

const example = async <T> (value: T) => {
    //awaiting for some Promise to resolve or reject;
     const result = await randomApi.getData(value);

} 

如果你在.tsx文件中,你不能只写<T>,但这是可行的:

const foo = <T, >(x: T) => x;

与extends{}攻击不同,这种攻击至少保留了意图。

这对我很有用

const Generic = <T> (value: T) => {
    return value;
}