#javascript #reactjs
#язык JavaScript #реагирует на
Вопрос:
У меня есть вложенный json, который я могу получить из конечной http://localhost:8080/salesmen/1
точки, он выглядит так
{ "Id": 1, "name": "salesmen", "loc": "california", "inventory": [ { "fruitId": 1, "Id": 1, "theDate": "08/12/2020", "descrip": "an apple", }, { "fruitId": 2, "Id": 1, "theDate": "08/12/2021", "descrip": "a banana", } ] }
Я хочу извлечь вложенную inventory
часть, чтобы построить из нее таблицу
Я написал выборку, которая выглядит так
Когда я проверяю консоль, все параметры в моем fruitdata
undefined
Это неверно и нужно ли мне делать что-то еще, чтобы получить это?
useEffect(() =gt; { fetch(SERVER_URL "salesmen/1") .then((response) =gt; response.json()) .then((data) =gt; { // fruits: responseData const fruitdata = [data].map((p) =gt; { return { inventory: p.inventory, theDate: p.inventory.theDate, description: p.inventory.descrip, }; }); console.log(fruitdata) setfruits(fruitdata); }) .catch((err) =gt; console.error(err)); }, []);
Комментарии:
1. Измените
[data]
наdata.inventory
, и в вашем инвентаре нет инвентаря
Ответ №1:
useEffect(() =gt; { fetch(SERVER_URL "salesmen/1") .then((response) =gt; response.json()) .then((data) =gt; { // fruits: responseData const fruitdata = data.inventory.map((p) =gt; { // mapping on invenroty will resolve the issue return { inventory: p.inventory, theDate: p.inventory.theDate, description: p.inventory.descrip, }; }); console.log(fruitdata) setfruits(fruitdata); }) .catch((err) =gt; console.error(err)); }, []);