我知道有很多线程已经在react js问题中使用map来解决这个嵌套循环问题,但是我很困惑,因为我该如何在代码中实现它。我尝试了几次,但遇到了错误,
这是我尝试过的某个主题,但是我似乎无法实现它:
这是我想要得到的Json:
"0"
我想要的是从此JSON示例获取值,但还是没有运气
这是我要循环的组件:
"costs": [
{
"service": "CTC",
"description": "JNE City Courier",
"cost": [
{
"value": 234000,
"etd": "1-2",
"note": ""
}
]
},
{
"service": "CTCYES",
"description": "JNE City Courier",
"cost": [
{
"value": 468000,
"etd": "1-1",
"note": ""
}
]
}
]
从参考号3开始,我尝试了此解决方案,但得到了<MDBDropdown className="select-type">
<MDBDropdownToggle caret className="select-btn">
Choose Your Courier Service
</MDBDropdownToggle>
<MDBDropdownMenu basic onClick={this.serviceData}>
{shipmentFees != null ? shipmentFees.map(
shipmentFee => (
<MDBDropdownItem key={shipmentFee.cost.service} name={shipmentFee.cost.description + "," + shipmentFee.cost.etd} value={shipmentFee.cost.value}>
{shipmentFee.cost.description}, {shipmentFee.cost.etd} Days
</MDBDropdownItem>
)
)
:
<MDBDropdownItem value="-">There is no service</MDBDropdownItem>
}
</MDBDropdownMenu>
</MDBDropdown>
unexpected token, expected ","
有人可以帮我解决这个问题吗?
答案 0 :(得分:1)
我只是按照您的第二段代码
1)我认为您的shipmentFee.cost.map(
应该是shipmentFee.costs.map(
2){strong> cost => (
此处的下一行cost
将为您提供 service
, description
< / strong>和 cost[]
3) cost[]
,因为它是一个数组,因此您必须执行另一个映射/循环才能提取 value
, {{ 1}} 和 etd
。 note
是您认为的期望值