當我們用泛型引數宣告箭頭函式的型別時,我們可以這樣做:
interface ArrowFunc {
<T>(arg: T): T;
}
type ArrowFunc2 = <T>(arg: T): T;
現在我需要使用這種型別并指定泛型引數,我該如何實作呢?顯然type Func = ArrowFunc<T>不起作用,因為泛型引數屬于函式而不是型別。
uj5u.com熱心網友回復:
我們可以通過一種解決方法來做到這一點。當我們宣告一個型別為 的變數時ArrowFunc,我們可以使用實體化運算式來替換T為我們選擇的型別。
interface ArrowFunc {
<T>(arg: T): T;
}
declare const fn: ArrowFunc
type Func = typeof fn<number>
// type Func = (arg: number) => number
操場
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/529773.html
標籤:打字稿仿制药箭头函数
