【发布时间】:2023-01-06 22:15:05
【问题描述】:
我已经这样定义了我的打字稿对象:
interface myInterface {
obj1: string;
obj2 : string,
}
const myValues : {[stage : string]:{[region : string]:myInterface}} = {
'beta':{
'us-east-1':{
obj1: "random_a1",
obj2: "random_a2"
},
'eu-west-1':{
obj1: "random_b1",
obj2: "random_c1"
}
},
}
现在这就是我想要访问这些值的方式,但是我收到了错误。我应该如何更改我的values,以便我可以这样调用值:
let x = myValues[stage]?[region];
【问题讨论】:
-
myValues[stage]?[region];你是说myValues[stage]?.[region];(带.)吗?如果那不是问题,那么您遇到的错误是什么? -
我在
stage中遇到错误。类型“String”不能用作索引类型 -
好的,你能说明
stage变量的定义位置吗?听起来您可能已将其创建为String(大写)而不是string(小写) -
这是Payground link。修复
?.错别字后无法重新生成
标签: javascript arrays typescript string