У меня есть этот массив, который я привожу из бэкэнда:
[{
timeDate: '2020-12-10T06:00:00.535+00:00',
totTransApproved: 75,
totTransDeclined: 3,
totAmount: 5016
}, {
timeDate: '2020-12-10T06:01:00.535+00:00',
totTransApproved: 71,
totTransDeclined: 4,
totAmount: 11337
}, {
timeDate: '2020-12-10T06:02:00.535+00:00',
totTransApproved: 83,
totTransDeclined: 6,
totAmount: 14370
}]
и мне нужно преобразовать его в эту форму:
[{
timeDate: '12/04/20 0:00',
name: 'Approved',
totTrans: 180,
totAmount: 125,
}, {
timeDate: '12/04/20 0:00',
name: 'declined',
totTrans: 10,
totAmount: 12,
}]
Я пробовал так, но мне нужны оба объекта
const datums = records.map((item) => ({
timeDate: item.timeDate,
name: 'Aprobada',
totTrans: item.totTransApproved,
totAmount: item.totAmount,
}));
Как мне это сделать ?
Спасибо
Я думаю, вы имеете в виду, что хотите разделить каждый объект из ввода на отдельные объекты «Одобрено» и «Отклонено». Если это правильно, вы можете вернуть массив из двух объектов из map()
const records = [{timeDate: '2020-12-10T06:00:00.535+00:00',totTransApproved: 75,totTransDeclined: 3,totAmount: 5016}, {timeDate: '2020-12-10T06:01:00.535+00:00',totTransApproved: 71,totTransDeclined: 4,totAmount: 11337}, {timeDate: '2020-12-10T06:02:00.535+00:00',totTransApproved: 83,totTransDeclined: 6,totAmount: 14370}]
const datums = records.map((item) => (
[
{ timeDate: item.timeDate,
name: 'Approved',
totTrans: item.totTransApproved,
totAmount: item.totAmount
},
{ timeDate: item.timeDate,
name: 'Declined',
totTrans: item.totTransDeclined,
totAmount: item.totAmount
}
]
));
console.info(datums);
.as-console-wrapper { max-height: 100% !important; top: 0; }
или, если вы не хотите, чтобы они группировались по массиву, используйте flatMap(), чтобы сгладить возвращаемый массив объектов.
const datums = records.flatMap((item) => (
[
{ timeDate: item.timeDate,
name: 'Approved',
totTrans: item.totTransApproved,
totAmount: item.totAmount
},
{ timeDate: item.timeDate,
name: 'Declined',
totTrans: item.totTransDeclined,
totAmount: item.totAmount
}
]
));
Вы спасли мне жизнь, большое спасибо .. Я сделал это с помощью flatMap