javascript - 如何在 React.js 中合并和复制两个数组和列表?
问题描述
我有两个对象数组:
const arr1 = [
{groupId: 1, name: 'group1'},
{groupId: 2, name: 'group2'}
]
const arr2 = [
{groupId: 1, itemId: 1, name: 'item1'},
{groupId: 1, itemId: 2, name: 'item2'},
{groupId: 1, itemId: 3, name: 'item3'}
]
我希望输出在 react.js 中是这样的列表
1. group1
1.1 item1
1.2 item2
1.3 item3
2. group2
解决方案
你可以这样做:
const arr1 = [
{groupId: 1, name: 'group1'},
{groupId: 2, name: 'group2'}
]
const arr2 = [
{groupId: 1, itemId: 1, name: 'item1'},
{groupId: 1, itemId: 2, name: 'item2'},
{groupId: 1, itemId: 3, name: 'item3'}
]
//in render function
arr1.map(arr => (
<ListHeader title={arr.name}>
{arr2.map(a => (
a.groupId === arr.groupId ? <ListItem title={a.name} /> : null
)}
</ListHeader>
))
推荐阅读
- css - 带有现代浏览器的“过滤器:progid:dximagetransform.microsoft.pixelate”
- python - 需要将一列拆分为三个不同的 bin ABC,每个 bin 中的观察数相同
- queue - NServiceBus、MassTransit 和 Rabbit MQ 还是 Kafka?
- postgresql - Postgrex 迁移失败,未定义对象 jsonb
- html - 如何获取文档中的 svg 位置?
- node.js - angular - node.js , HttpClient put 连接成功但没有成功
- asp.net-core - 有没有办法等待接收rabbitmq消息?
- javascript - 使用参数数组更改 JavaScript 函数的参数值不起作用
- jquery - 如何与 URL 一起返回参数(jquery 数据表和 ASP.NET MVC)
- indexing - Q1 is not convex error while using decision variable in index