a: [
{
nodes: [
{
nodeId: "*"
}
],
startsAt: "2023-01-06 16:17:41",
endsAt: "2023-01-06 16:17:41"
},
{
nodes: [
{
clusterId: "1111",
nodeId: "1"
},
{
clusterId: "1111",
nodeId: "2"
}
],
startsAt: "2023-01-06 16:17:41",
endsAt: "2023-01-06 16:17:41"
},
{
nodes: [
{
clusterId: "222",
nodeId: "3"
},
{
clusterId: "2222",
nodeId: "5"
}
],
startsAt: "2023-01-06 16:17:41",
endsAt: "2023-01-06 16:17:41"
}
]
把a转换为b
是antd中的Cascader级联选择那种数据形式,nodeId为*时代表全部选中,做数据回填
b: [
{
nodes: [[*,clusterId,nodeId ]],
timeCycle: [startsAt, endsAt],
},
],
数组对象转换为二维数组应该如何转换
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
10条回答 默认 最新
社区专家-Monster-XH 2023-02-13 14:27关注map函数:
const a = [ { nodes: [ { nodeId: "*" } ], startsAt: "2023-01-06 16:17:41", endsAt: "2023-01-06 16:17:41" }, { nodes: [ { clusterId: "1111", nodeId: "1" }, { clusterId: "1111", nodeId: "2" } ], startsAt: "2023-01-06 16:17:41", endsAt: "2023-01-06 16:17:41" }, { nodes: [ { clusterId: "222", nodeId: "3" }, { clusterId: "2222", nodeId: "5" } ], startsAt: "2023-01-06 16:17:41", endsAt: "2023-01-06 16:17:41" } ]; const b = a.map(item => { const nodes = item.nodes.map(node => { const { clusterId, nodeId } = node; return [nodeId === "*" ? "*" : clusterId, nodeId]; }); return { nodes, timeCycle: [item.startsAt, item.endsAt], }; });本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用