这是我的Jason数据和代码,我正在使用map()填充我的数据,但出现了一些错误,下面是我的代码
var data = [
{
categorytitle: "Shoes",
category: [
{
Category1: "Boots"
},
{
Category2: "Sneakers"
},
{
Category3: "Flats"
},
{
Category4: "Booties"
},
{
Category5: "Mules"
},
{
Category6: "Heels/Pumps"
},
{
Category7: "Clogs"
},
{
Category8: "Slippers"
},
{
Category9: "Sandals"
},
{
Category10: "Sale"
},
{
Category11: "Shop All"
}
]
}
];
也请在下面找到填充代码...
{data.map((el, e) => (
<div {...el} key={e}>
<h3>{el.categorytitle}</h3>
<ul>
<li>{el.category[e]}</li>
</ul>
</div>
))}
请指导我如何在列表中显示Category1
....
答案 0 :(得分:1)
您可以执行以下操作
{data.map((ele, index) => (
<div key={"Key-"+index}>
<h3>{ele.categorytitle}</h3>
<ul>
{Array.isArray(ele.category) && ele.category.map((d, i) => (<li key={"Key-"+i}>{d[`Category${i+1}`]}
</li>))}
</ul>
</div>
))}
答案 1 :(得分:0)
尝试类似的方法:您需要遍历category
数组
data[0].category.map((el, i) => {
console.log(el['Category' + i++])
console.log(i)
return el['Category' + i++];
})
答案 2 :(得分:0)
const data = [{
categorytitle: "Shoes",
category: [{
Category1: "Boots"
},
{
Category2: "Sneakers"
},
{
Category3: "Flats"
},
{
Category4: "Booties"
},
{
Category5: "Mules"
},
{
Category6: "Heels/Pumps"
},
{
Category7: "Clogs"
},
{
Category8: "Slippers"
},
{
Category9: "Sandals"
},
{
Category10: "Sale"
},
{
Category11: "Shop All"
}
]
}];
const category = data.forEach(({
category
}) => {
Object.values(category).map((value, index) => {
console.log(value[`Category${index +1 }`]);
})
});
对于React JSX
,它应该类似于:
{data.forEach(({ category }) => {
Object.values(category).map((value, index) => {
<span> {value[`Category${index + 1}`]} </span>;
});
})}