【发布时间】:2017-02-15 00:08:44
【问题描述】:
我正在使用 json api,我可以访问 api 并使用 map 方法列出第一个数组,但无法访问除此之外的任何内容。
{
"client_id": 1,
"client_name": "Moen, Hickle and Stehr",
"products": [ {
"product_id": 1,
"product_name": "Ergonomic Cotton Keyboard",
"product_asin": "cfq35yoyh64i",
"product_image_url": "https://unsplash.it/310/676",
"keywords": [ {
"keyword_id": 1,
"keyword_name": "nam",
"keyword_country": "LV",
"ranks": [ {
"rank_id": 1,
"rank_position": 214,
"rank_page": 2,
"rank_date": "2016-08-16"
}, {
"rank_id": 2,
"rank_position": 82,
"rank_page": 3,
"rank_date": "2016-11-12"
} ]
} ]
}]
}
如何访问关键字和排名数组?有没有办法使用map方法嵌套在prods函数中,输出关键词和排名信息?
var Product = React.createClass({
render: function() {
var prods = this.props.products.map(function(item, index){
return(
<ul key={index}>
<li>{item.product_name} </li>
<li>{item.product_image_url}</li>
</ul>
)
});
return (
<div className="col-sm-12 compBlock">
<div className="col-sm-6">
<h3>{this.props.name}</h3>
{prods}
</div>
</div>
)
}
【问题讨论】:
-
你真正想做什么?因为你可以在地图里面做一个内部地图。或者只是一个 for 循环,具体取决于您的需要。
-
是的,你可以在
item上再做一个.map,例如item.keywords.map(...)
标签: javascript json reactjs multidimensional-array