假设我有一个静态字典:
const myDict = {
1: "one",
2: "two",
}
TypeScript 现在推断 typeof myDict
与形状 myDict
完全匹配,这非常好,因为 IDE 可以为我自动补全 myDict
键
我现在想约束字典,使其必须符合模式 { [k: number]?: string }
,但保留确切的类型推断,所以我不会丢失自动完成。当我明确输入时:
const myDict: { [k: number]?: string } = {
1: "one",
2: "two",
}
然后 typeof myDict
从 { 1: "one", 2: "two" }
更改为 { [k: number]?: string }
,破坏了我的自动完成功能。这是一种直接的方法吗?