【发布时间】:2022-01-16 19:36:35
【问题描述】:
我正在使用 React 开发一个简单的项目,并且是 React 的新手,我在映射给定的 json 文件以将所需的对象发送到不同的组件时遇到了麻烦。
这是我得到的 JSON 文件(通过 api)
{
"trees":{
"name":"a",
"age":"9",
"height":"10",
"location":"park"
},
"cars":{
"name":"b",
"age":"30",
"height":"10",
"location":"park"
},
"bikes":{
"name":"c",
"age":"110",
"height":"10",
"location":"park"
},.........................
这是我在 App.js 中获取的 json。我的想法是将其完全发送到另一个组件(Data.js),然后从 data.js 发送到另一个组件,该组件将包含树、汽车、自行车。
即使在执行const d = [jsonfile] 之后,我也无法在任何级别映射此 json 文件,即使在此之后我在映射时未定义。
App.js
const[Data,setData] = useState([]);
useEffect(()=>{
fetch('API-HERE').then((result)=>{result.json().then((resp)=>{
setData(resp);
})})
},[])
return (
<div className="App">
<DataFetched data={Data} />
</div>
);
在此之后,我无法在 DataFetched.js 中进行映射,以将其单独发送给另一个只有树、汽车、自行车的孩子,以便可以读取它们的属性。
【问题讨论】:
-
您想将它们作为平面数组发送到
DataFetched组件吗? -
是的,从 DataFetched 到孩子,这样我就可以在那个孩子身上分别读取树木、汽车、自行车……这样我就可以在那个孩子身上使用
trees.name等。 -
映射是什么意思?你能写一个映射数据的例子吗?基本上,您应该编写一个循环来读取数据并为每个索引呈现相同的组件
-
const samplerecipes = [{ id: 1, name: "Pasta", cookingTime: 90, }, { id: 2, name: "Curry", cookingTime: 40, }] -
重复问题:
https://stackoverflow.com/questions/44309300/iterating-over-json-in-react
标签: javascript reactjs json