我有JSON数据,并且在构造函数中使用SetState
{
index:index,
key: key,
all: {
0: {name:'qwerty', id:'1', surname:'foo'}
1: {name:'bar', id:'2', surname:'aaa'}
2: {name:[
0: {parent:'first'}
1: {name:'second'}
]
}
}
}
如果我在渲染中编写<span>{this.state.id}</span
,那么一切正常,但是如果我在Render或构造函数中编写了<span>{this.state.all.0.name}</span>
之类的东西,那将不起作用。
我尝试:
this.state.all.0.name
this.state.all[index].name //this is let var index = 1
this.state.all[0].name
这是因为我在promise中设置了构造函数的状态,并且在2秒钟内我的状态未定义,如何在promise加载后呈现?
答案 0 :(得分:0)
如果必须使用索引来访问值,请使用数组而不是对象,例如:
Function#apply
在此示例中,this.state = {
index:index,
key: key,
all: [
{name:'qwerty', id:'1', surname:'foo'}, //0
{name:'bar', id:'2', surname:'aaa'}, //1
{name:[ //2
{parent:'first'}, //0
{name:'second'}, //1
],
},
],
}