Javascript 在循环中循环对象属性
我的API调用得到如下响应Javascript 在循环中循环对象属性,javascript,reactjs,Javascript,Reactjs,我的API调用得到如下响应 { products: { product0: { id: 'F103_SURFACELAPTOP_15', quantity: 47, description: 'Surface Laptop 15 Zoll' }, product1: { id: 'F101_MACBOOKPRO_13', quantity: 10, description: 'Macbook
{
products: {
product0: {
id: 'F103_SURFACELAPTOP_15',
quantity: 47,
description: 'Surface Laptop 15 Zoll'
},
product1: {
id: 'F101_MACBOOKPRO_13',
quantity: 10,
description: 'Macbook Pro 13 Zoll'
}
},
salesOrderId: '9000002080'
}
{Object.values(value).map((item, i) =>
它可以包含1-n个产品。我正试图在表格中打印响应
这是我得到的,它正在工作,但它只会显示第一个产品。然而,我需要循环浏览产品并展示每一个产品
{value.map((item, i) =>
<tr key={i}>
<td>{i + 1}</td>
<td>{item.salesOrderId}</td>
<td>{item.products['product' + i].id}</td>
</tr>
)
{value.map((项目,i)=>
{i+1}
{item.salesOrderId}
{item.products['product'+i].id}
)
这就是我试图循环的方式,但没有成功
{value.map((item, i) =>
<tr key={i}>
<td>{i + 1}</td>
<td>{item.salesOrderId}</td>
{item.products['product' + i].map((product, i) =>
<td key={i}> {product.i.id} </td>)}
<td>{item.products['product' + i].id}</td>
</tr>
)}
{value.map((项目,i)=>
{i+1}
{item.salesOrderId}
{item.products['product'+i].map((product,i)=>
{product.i.id})
{item.products['product'+i].id}
)}
因为值是对象而不是数组
所以像这样使用
{
products: {
product0: {
id: 'F103_SURFACELAPTOP_15',
quantity: 47,
description: 'Surface Laptop 15 Zoll'
},
product1: {
id: 'F101_MACBOOKPRO_13',
quantity: 10,
description: 'Macbook Pro 13 Zoll'
}
},
salesOrderId: '9000002080'
}
{Object.values(value).map((item, i) =>
而不是
{value.map((item, i) =>
在此格式上使用循环
{Object.values(value).map((item, i) =>
<tr key={i}>
<td>{i + 1}</td>
<td>{item.salesOrderId}</td>
{Object.values(item.products).map((product,ind) =>
<td key={ind}> {product.id} </td>)}
<td>{item.products['product' + i].id}</td>
</tr>
)}
{Object.values(value.map)(项目,i)=>
{i+1}
{item.salesOrderId}
{Object.values(item.products).map((product,ind)=>
{product.id}}
{item.products['product'+i].id}
)}
要遍历对象属性,如果只需要值,可以使用object.values(value)
,如果同时需要,可以使用object.entries(value)
键和值。这两个函数都返回数组,其中函数map
可用编写该API的人应该重新考虑其输出格式。。。