У меня есть REACT JS на стороне клиента и php API на стороне сервера. Мой вызов API извлекает данные JSON в следующем формате (я пробовал на POSTMAN ):
{
"records": {
"Master Automotives": [
{
"SparePartID": "43",
"Name": "Oil and Lubricants",
"Price": "4500",
"VendorID": "48",
"CompanyName": "Master Automotives"
},
{
"SparePartID": "45",
"Name": "Lights",
"Price": "2300",
"VendorID": "48",
"CompanyName": "Master Automotives"
}
],
"Repair Solutions": [
{
"SparePartID": "47",
"Name": "Steering Wheel",
"Price": "1500",
"VendorID": "60",
"CompanyName": "Repair Solutions"
}
],
"FiveStar Automotives": [
{
"SparePartID": "51",
"Name": "Brakes",
"Price": "234",
"VendorID": "70",
"CompanyName": "FiveStar Automotives"
},
{
"SparePartID": "53",
"Name": "Clutch",
"Price": "999",
"VendorID": "70",
"CompanyName": "FiveStar Automotives"
},
{
"SparePartID": "55",
"Name": "LED",
"Price": "288",
"VendorID": "70",
"CompanyName": "FiveStar Automotives"
}
]
}
}
Этот код выше похож на массив, который содержит массивы элементов каждой компании. У некоторых компаний есть 2 предмета, у некоторых - 3, а у некоторых - только 1 предмет . Теперь у меня есть REACT JS, где я хочу вызвать php API и сохранить вышеупомянутые данные JSON в таком формате, что я сохраняю элементы каждой компании отдельно в отдельных массивах (динамически).
Мне нужно перебрать вышеуказанные данные JSON и разбить их на столько массивов, сколько уникальных Компаний представляют . Как и в приведенных выше данных, имеется 3 различных элемента компаний , поэтому я хочу разделить этот JSON на 3 разных массива, но если бы у меня было 15 разных компаний, то я бы хотел разделить и сохранить его в 15 разных массивов . Моя грубая идея вызова REACT API с использованием AXIOS приведена ниже:
axios.post('http://localhost/Auth/api/customers/show_cart.php',
{
headers: {'Accept': 'application/json, text/plain, */*',
'Content-Type': 'application/json'}
} )
.then(response => {
//I need to know what to write here to save the data in my required format
})
.catch(error => {
if (error) {
console.log("REACT Error. Cannot show cart items"); }
});
Пожалуйста, мне нужна помощь, как динамически сохранять мои элементы (сгруппированные по названиям компаний) в отдельных массивах для каждой компании. Пожалуйста, помогите!
P.S. mySQL Запрос Group BY здесь не помогает. Я просто хочу помочь в вызове React API. Спасибо за прочтение.
EDIT:
Я хочу хранить данные в массивах (названных в названиях компаний)
как массив Masterautomotives [] должен иметь эти данные ниже:
[
{
"SparePartID": "43",
"Name": "Oil and Lubricants",
"Price": "4500",
"VendorID": "48",
"CompanyName": "Master Automotives"
},
{
"SparePartID": "45",
"Name": "Lights",
"Price": "2300",
"VendorID": "48",
"CompanyName": "Master Automotives"
}
]
And Array RepairSolutions [] должны иметь следующие данные:
[
{
"SparePartID": "47",
"Name": "Steering Wheel",
"Price": "1500",
"VendorID": "60",
"CompanyName": "Repair Solutions"
}
]
и т. Д. Для остальных Компаний, которые извлекаются из вызова API.