当我为预期的 JSON 响应定义了类型时,我一直在尝试从 JSON blob 初始化 Map 类型。例如,我们有一件 T 恤尺寸type
。
这是 JSON blob 的样子:
const blob = `{
"name": "TShirtSize",
"description": {
"S": "Small",
"M": "Medium",
"L": "Large"
}
}`
这是我为 JSON blob 创建的类型。
export type TShirtType = {
name?: string
description: Map<string, string>
}
当我将 JSON 解析为 时TShirtType
,我不会将其转换description
为<string, string>
. 我得到一个错误tshirt.description.get
不是函数。
const tshirt = JSON.parse(blob) as TShirtType
if (tshirt.description !== undefined) {
console.log(tshirt.description)
console.log(tshirt.description.get('S'))
}
我可以将其定义为{ [key: string]: string }
并调用tshirt.description['S']
以获取价值,但我希望使用 Map 代替。我想知道这是否可能。