[英]How to declare string > string > number structure in TypeScript?
我需要聲明一個 useState,但我不太了解 TypeScript。 我應該寫什么來代替XXXXXX
。 我有一個嚴格的 JSON 字符串 > 字符串 > 數字結構,我將從它填充selectedLayoutItemIds
。 頂級 id 稱為eventTimeId
,第二級我稱為layoutItemId
,第三級count
。 你能幫點忙嗎?
const [selectedLayoutItemIds, setSelectedLayoutItemIds] = useState<
{ [eventTimeId: string]: XXXXXX } | undefined
>();
您只需要像在常規 json 中所做的那樣描述數據的結構,並且 1 級和 2 級鍵將被視為字符串:
interface LayoutItemIds {
eventTimeId: {
layoutItemId: {
count: number;
}
}
}
const [selectedLayoutItemIds, setSelectedLayoutItemIds] = useState<LayoutItemIds | undefined>();
這是一個可以看到它運行的操場。
最后我聲明了一個新接口:
export type LayoutItemIdsWithAvailability = {
[layoutItemId: string]: number;
};
並在這里使用:
const [selectedLayoutItemIds, setSelectedLayoutItemIds] = useState<
{ [eventTimeId: string]: LayoutItemIdsWithAvailability } | undefined
>();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.