簡體   English   中英

對象內的動態鍵名

[英]Dynamic key name inside an object

我正在嘗試執行以下操作:我有一個看起來像這樣的對象

const object = {
    healthcheck: [
        { method: 'get', name: 'test' }
    ],
    users: [
        { method: 'get', name: 'auth' }
    ],
};

所以我有一個有鍵的對象,每個鍵可以是任何字符串,每個鍵都是一個對象數組,其中的方法和名稱作為鍵。

如何使用 JSDoc 在對象內部使用動態鍵提供智能感知?

謝謝! 😉

您可以通過以下語法輸入提示動態鍵: {[key: string]: any} ,因此在您的情況下,這應該會得到您正在尋找的結果:

/**
 * @typedef {{
 *     [key: string]: [{
 *         method: string,
 *         name: string
 *     }]
 * }} MyObject
 */

/**
 * @type {MyObject}
*/
const object = {
    healthcheck: [
        { method: 'get', name: 'test' }
    ],
    users: [
        { method: 'get', name: 'auth' }
    ],
}

typedef 是為了方便在你的代碼中的各個地方使用類型,但是如果你需要智能感知來顯示類型的完整形狀,你可以直接使用類型:

/**
 * @param {{
 *     [key: string]: [{
 *         method: string,
 *         name: string
 *     }]
 * }} routes
 */
const xt = routes => {}

暫無
暫無

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

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