javascript - 如何从 React 中的道具循环嵌套对象?
问题描述
我正在尝试从这些道具构建一个 obj 模型:
cars.data: {
details: [
{
id: Audi,
attributes: [
{id: audi1, value: 1},
{id: audi2, value: 2},
{id: audi3, value: 3}
]
},
{
id: BMW,
attributes: [
{id: bmw1, value: 1},
{id: bmw2, value: 2},
{id: bmw3, value: 3}
]
},
{
id: Merc,
attributes: [
{id: merc1, value: 1},
{id: merc2, value: 2},
{id: merc3, value: 3}
]
},
]
}
我在映射属性数组时遇到困难,正确映射这个嵌套数组的正确方法是什么?这是我的尝试:
const objModel = {
details: [
props.cars.data.details.map(item => (
{
id: item.id,
attributes: [
item.map(item => (
{
id: item.attributes.id,
value: item.attributes.value
}
))
]
}
))
]
}
具体来说,这部分不起作用(我认为因为它是地图中的地图):
item.map(item => (
{
id: item.attributes.id,
value: item.attributes.value
}
))
循环属性以获取每个 id 和 value 的正确方法是什么
解决方案
它应该是item.attributes.map
例如
attributes: item.attributes.map(attr => (
{
id: attr.id,
value: attr.value
}
)
推荐阅读
- python - 尝试以 django 嵌套内联表单集的嵌套形式设置用户字段 - 失败
- python - 当我在骰子号码生成器上翻转 21 时,如何让 python 打印“你输了”?
- python - 'FastText' 对象没有属性 'vocab'
- algorithm - 斐波那契堆上的操作
- python - 使用 nba_api.stats.endpoints 库的 Leaguegamefinder 时引发连接超时错误
- react-native - 文本背景的反应本机动画
- laravel - Laravel 在站点和应用程序中获取数据实时和共享
- xml - Plesk API 调用电子邮件别名并在圆形立方体中显示
- python-3.x - 嗨,我需要一些帮助来了解转置代码的工作原理
- c# - 为什么并行多线程代码执行比顺序慢?