У меня есть объект json, и я хочу извлечь из него некоторые значения для создания нового объекта в React. js. Однако, что бы я ни пытался, я получаю ошибки, связанные с неопределенностью значения или ключа.
Json
{
"meat":{"drink":"Bovril", "courses":{ "main":"chicken", "pudding":"jelly" },
"vegetarian":{"drink":"milkshake", "courses":{"main":"cheese","pudding":"ice cream"},
"vegan":{"drink":"spinach juice", "courses":{"main":"lettuce","pudding":"apple"}
}
Желаемые результаты
Я хотел бы динамически создать объект с именем defaultValues , который соответствует следующему, если бы я жестко его кодировал. Как вы можете видеть, это создается из значений в приведенном выше файле json:
const defaultValues: {
meat: "chicken",
vegetarian: "cheese",
vegan: "lettuce"
}
Я попробовал следующее на основе ответа на аналогичный вопрос , но это не работает:
Моя попытка
const json = Json; //this contains the contents of my json file above
const defaultValues = {};
Object.keys(json).forEach(function(key) {
defaultValues[key.meat].push([key.courses.main]);
});
Ошибка
Я получаю следующую ошибку:
×TypeError: Cannot read property 'push' of undefined
Кто-нибудь может посоветовать, как это сделать?
Большое спасибо,
Kat ie