Javascript 如何在reactjs中循环嵌套对象?
因为这是在一个对象中,我这样做,但它不工作。 如何通过循环获取“key”字段Javascript 如何在reactjs中循环嵌套对象?,javascript,json,reactjs,Javascript,Json,Reactjs,因为这是在一个对象中,我这样做,但它不工作。 如何通过循环获取“key”字段 <div> <ul> {tickets && tickets.issues && Object.keys(tickets.issues).map((issue, i) => ( <li key={i}> Issue number: {tickets.iss
<div>
<ul>
{tickets && tickets.issues && Object.keys(tickets.issues).map((issue, i) =>
(
<li key={i}>
Issue number: {tickets.issues.key}
</li>
))}
</ul>
</div>
{tickets&&tickets.issues&&Object.key(tickets.issues).map((issue,i)=>
(
-
发行编号:{tickets.issues.key}
))}
解决方案
<div>
<ul>
{this.state.tickets && this.state.tickets.issues && Object.keys(this.state.tickets.issues).map((issue, i) =>
(
<li key={i}>
Issue number: {this.state.tickets.issues[i].key}
</li>
))}
</ul>
</div>
{this.state.tickets&&this.state.tickets.issues&&Object.keys(this.state.tickets.issues).map((issue,i)=>
(
-
发行编号:{this.state.tickets.issues[i].key}
))}
票证。问题
是一个对象数组,因此:
const { issues } = tickets;
issues.map(issue => console.log(issue.key));
tickets.issues
是一个对象数组,因此:
const { issues } = tickets;
issues.map(issue => console.log(issue.key));
简单的解决办法
<div>
<ul>
{tickets && tickets.issues && Object.keys(tickets.issues).map((issue, i) =>
(
<li key={i}>
Issue number: {tickets.issues.key}
</li>
))}
</ul>
</div>
{tickets&&tickets.issues&&Object.key(tickets.issues).map((issue,i)=>
(
-
发行编号:{tickets.issues.key}
))}
一个简单的解决方案
<div>
<ul>
{tickets && tickets.issues && Object.keys(tickets.issues).map((issue, i) =>
(
<li key={i}>
Issue number: {tickets.issues.key}
</li>
))}
</ul>
</div>
{tickets&&tickets.issues&&Object.key(tickets.issues).map((issue,i)=>
(
-
发行编号:{tickets.issues.key}
))}
查看您的响应图像,关键字段存在于issues[]中,但不存在于字段中,因此应该可以(不需要嵌套):
{Object.key(tickets.issues).map((issue,i)=>(
发行编号:{Issue.key}
))}
如果在字段中有键(未在图像中展开)
{Object.key(tickets.issues).map((issue,i)=>(
Object.key(issue.fields).map(field=>(
发行编号:{field.key}
)
))}
查看您的响应图像,关键字段存在于issues[]中,但不存在于字段中,因此应该可以(不需要嵌套):
{Object.key(tickets.issues).map((issue,i)=>(
发行编号:{Issue.key}
))}
如果在字段中有键(未在图像中展开)
{Object.key(tickets.issues).map((issue,i)=>(
Object.key(issue.fields).map(field=>(
发行编号:{field.key}
)
))}
只有一个数组?只有一个数组?它不显示任何内容。我犯了一个小错误。请检查更新的答案仍然没有。哦,我刚刚意识到没有字段。这是唯一的票证。问题。它不显示任何内容。现在我犯了一个小错误。请检查更新的答案仍然没有ing o.oOhh我刚刚意识到没有字段,只有tickets.issues。让我试试这个:我如何在渲染函数中显示它?不在挂载函数中。让我试试这个:我如何在渲染函数中显示它?不在挂载函数中使用第一个方法,其中tickets.issues是一个数组,与字段无关,我得到一个错误,TypeError:无法将未定义或null转换为objecthmm,请测试它们是否存在,{tickets&&tickets.issues&&Object.keys(…)}
因为它们只有在api调用后才可用。是的..我知道现在发生了什么,它在我在componentDidMount函数中获取JSON数据之前呈现,我如何从那里开始,这就是对象为空的原因。有没有办法在呈现之前获取数据?这是一个愚蠢的错误XDDDDNo问题,有时也会发生在我身上使用第一个方法,其中tickets.issues是一个数组,与字段无关,我得到一个错误,TypeError:无法将未定义或null转换为objecthmm,测试它们是否存在,{tickets&&tickets.issues&&Object.keys(…)}
因为它们只有在api调用后才可用。是的..我知道现在发生了什么,它在我在componentDidMount函数中获取JSON数据之前呈现,我如何从那里开始,这就是对象为空的原因。有没有办法在呈现之前获取数据?这是一个愚蠢的错误XDDDDNo问题,有时也会发生在我身上。