У меня есть объект, который выглядит следующим образом:
{
data: [
{ id: "1", state: "accepted", estimate_date: "2019-12-17" },
{ id: "2", state: "rejected", estimate_date: "2019-12-17" },
{ id: "3", state: "open", estimate_date: "2019-12-17" },
{ id: "4", state: "open", estimate_date: "2019-12-18" },
{ id: "5", state: "rejected", estimate_date: "2019-12-18" },
{ id: "6", state: "accepted", estimate_date: "2019-12-18" },
]
}
Когда я использую loda sh groupBy для объекта, подобного этому:
const key = 'data';
const groupedEstimates = groupBy(estimateData[key], 'estimate_date');
Возвращает:
[
[
"2019-12-17"
],
[
[ { id: "1", state: "accepted" } ],
[ { id: "2", state: "rejected" } ],
[ { id: "3", state: "open" } ]
]
],
[
[
"2019-12-18"
],
[
[ { id: "4", state: "open" } ],
[ { id: "5", state: "rejected" } ],
[ { id: "6", state: "accepted" } ]
]
]
Но сейчас я пытаюсь добиться чего-то подобного:
[
{
date: "2019-12-17",
items: [
{ id: "1", state: "accepted" },
{ id: "2", state: "rejected" },
{ id: "3", state: "open" },
]
},
{
date: "2019-12-18",
items: [
{ id: "4", state: "open" },
{ id: "5", state: "rejected" },
{ id: "6", state: "accepted" },
]
}
]
За исключением того, что я не знаю, как этого добиться с помощью loda sh. Для этого не нужно использовать loda sh, но я использовал это только в начале, так как это казалось простым решением моей проблемы. Теперь, когда я пытаюсь создать более разумную структуру данных, я хотел бы получить представление о том, как этого добиться.