簡體   English   中英

變量/字段聲明中的通用類型約束

[英]Generic type constraint in variable/field declaration

假設我們有一個通用接口:

export interface IKeyValue<K, V> {
    key: K;
    value: V;
}

現在,我們要聲明一個變量/字段並限制可以用作KV

public items: IKeyValue<K extends Type1, V extends Type2>[];

上面的代碼無法編譯。

我正在使用TypeScript 2.6。

我們如何在TypeScript中實現它?

那是因為您沒有提供定義,而是提供了實例。

public items: IKeyValue<Type1, Type2>[];

...是有效的語法。


如果要限制定義(接口),則可以提供擴展:

export interface IKeyValue<K extends Type1, V extends Type2> {
    key: K;
    value: V;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM