[英]Typescript Generic and Non-Generic Version of Type
我有一個非常簡短的問題,我正在嘗試在打字稿中創建兩個類:
export class ServiceResponse { }
export class ServiceResponse<T> extends ServiceResponse {}
但根據打字稿,這些是重復的標識符。 是否可以在typescript中使用與泛型類型參數相同的名稱? 這是以前有人解決過的問題嗎? 我來自C#
背景,這種模式很常見。
謝謝!
Aleksey在上面的評論中回答了這個問題,但只是想提供一個具有更多背景的實際答案以供將來參考
這是預期的,因為在編譯為JavaScript時,要么刪除了Typescript類型注釋(包括泛型類型參數<T>
),並且最終得到兩個具有相同名稱的類,因此重復標識符錯誤。
要定義同一類的泛型和非泛型版本,可以為泛型類型參數指定默認值:
export class ServiceResponse<T = void> {
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.