簡體   English   中英

如何用可變數量的鍵定義打字稿的類型?

[英]How to define a type of typescript with a variable number of keys?

我有以下情況,我不知道確切如何用打字稿表達:

{
  "things": {
    "a": 11,
    "b": 22,
    .
    .
    .
  }
}

然后,我想定義如下內容:

type Response<T> = { [_: string]: T }

因此,上面的類型表示具有鍵和類型T的特定值的任何響應,但是我將有很多鍵,如json中所述,“ a”,“ b” ...,但我找不到它的類型。

這應該工作:

interface Response<T> {

    things: {
        [key: string]: T;
    };
}

如果您已將某些鍵固定a ,則可以執行以下操作:

interface Response<T, R> {

    things: {
        // fixed keys
        a: R;
        // some more fixed keys.

        [key: string]: T;
    };
}

暫無
暫無

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

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