I have a JSON array returned by an API call
[{
"id": 1,
"name": "aa",
"zone": 1
}, {
"id": 2,
"name": "bb",
"zone": 1
}, {
"id": 3,
"name": "cc",
"zone": 2
}, {
"id": 3,
"name": "dd",
"zone": 2
}
]
By using lodash I did _.groupBy(myData,'zone')
and the result was an Object containing 2 arrays, each one for a different zone.
But what I need to achieve, in an object containing an array of zones and for each zone an array of associated names.
Desired result:
[
{
"zone": "1",
"items": [
{
"id": 1,
"name": "aa",
"zone": 1
},
{
"id": 2,
"name": "bb",
"zone": 1
}
]
},
{
"zone": "2",
"items": [
{
"id": 3,
"name": "cc",
"zone": 2
},
{
"id": 3,
"name": "dd",
"zone": 2
}
]
}
]
Is possible to transform the original array into the one I need using lodash?
Later on my Angular template I want to do an *ngFor='let zone of zones'
or something similar