Lodash for reagrup complex Array[object]
Lodash for reagrup complex Array[object]
我是新手,但我认为这是给高级 Lodash 程序员的
我是 Lodash 的新手,正在尝试解决这个问题,但我可以找到解决问题的好方法。
我有一组订单和一组行,每个订单有一张票。
数据结构如下:
[{
"id": 201,
"order": "Buyer 1",
"lines": ▿[
▿{
"id": 1,
"ticket": ▿{
"id": 151,
"event": ▿{
"id": 31,
"name": "Event 1"
},
"name": "Event 1 Ticket 1",
"price": 39,
"minimum": 1,
"maximum": 5
},
"quantity": 1
},
▿{
"id": 2,
"ticket": {
"id": 152,
"event": {
"id": 31,
"name": "Event 1"
},
"name": "Event 1 Ticket 2",
"price": 60,
"minimum": 2,
"maximum": 4
},
"quantity": 5
},
▿{
"id": 3,
"ticket": {
"id": 153,
"event": {
"id": 33,
"name": "Event 1"
},
"name": "Event 3 Ticket 2",
"price": 60,
"minimum": 2,
"maximum": 4
},
"quantity": 5
}
],
"created_at": "2016-12-22T17:58:27+0000"
},
...]
我需要按事件名称对所有订单进行分组并需要下一个结构:
[{
"event_id": 31,
"event_name":"Event 1",
"total_tickets": 6,
"total_sold": 339
"orders": [
{
"id": 201,
"order": "Buyer 1"
},
....
]},
{
"event_id": 33,
"event_name":"Event 3",
"total_tickets": 5,
"total_sold": 300
"orders":[
{
"id": 201,
"order": "Buyer 1"
}
]},
....
]
"total_tickets" -> 活动
订单总票数(数量)
"total_sold" -> 事件订单总和'(价格*数量)
任何帮助都非常有用
看一看_.reduce
(甚至vainilla JS Array.reduce
)
作为一个友善的建议,请尝试想象并勾勒出 - 在您的脑海中或在纸上 - 究竟需要用这些数据完成什么,然后开始寻找工具来完成它,而不是相反。
我是新手,但我认为这是给高级 Lodash 程序员的
我是 Lodash 的新手,正在尝试解决这个问题,但我可以找到解决问题的好方法。
我有一组订单和一组行,每个订单有一张票。
数据结构如下:
[{
"id": 201,
"order": "Buyer 1",
"lines": ▿[
▿{
"id": 1,
"ticket": ▿{
"id": 151,
"event": ▿{
"id": 31,
"name": "Event 1"
},
"name": "Event 1 Ticket 1",
"price": 39,
"minimum": 1,
"maximum": 5
},
"quantity": 1
},
▿{
"id": 2,
"ticket": {
"id": 152,
"event": {
"id": 31,
"name": "Event 1"
},
"name": "Event 1 Ticket 2",
"price": 60,
"minimum": 2,
"maximum": 4
},
"quantity": 5
},
▿{
"id": 3,
"ticket": {
"id": 153,
"event": {
"id": 33,
"name": "Event 1"
},
"name": "Event 3 Ticket 2",
"price": 60,
"minimum": 2,
"maximum": 4
},
"quantity": 5
}
],
"created_at": "2016-12-22T17:58:27+0000"
},
...]
我需要按事件名称对所有订单进行分组并需要下一个结构:
[{
"event_id": 31,
"event_name":"Event 1",
"total_tickets": 6,
"total_sold": 339
"orders": [
{
"id": 201,
"order": "Buyer 1"
},
....
]},
{
"event_id": 33,
"event_name":"Event 3",
"total_tickets": 5,
"total_sold": 300
"orders":[
{
"id": 201,
"order": "Buyer 1"
}
]},
....
]
"total_tickets" -> 活动
订单总票数(数量)"total_sold" -> 事件订单总和'(价格*数量)
任何帮助都非常有用
看一看_.reduce
(甚至vainilla JS Array.reduce
)
作为一个友善的建议,请尝试想象并勾勒出 - 在您的脑海中或在纸上 - 究竟需要用这些数据完成什么,然后开始寻找工具来完成它,而不是相反。