javascript - Javascript JSON-如何映射到多个对象
问题描述
我尝试从本地 json 文件中显示多个对象的值,这里是“groundName”。我的目的是一次映射多个对象,这样我就可以避免重写对象的名称来访问我需要的值。我没有设法找到这个特定问题的答案,所以我来这里询问。
在这里,通过写入对象的名称,我确实检索到了我想要的值。
import { useState, useEffect } from "react";
import grounds from './../../UballersGroundsData.json';
export default function Groundlist() {
const [groundNames, setgroundNames] = useState([grounds]);
return(
<div>
<h1>Hello world!</h1>
<ul>
{groundNames.map(([index]) => (
<li key={(index.ground1.groundId)}>{index.ground1.groundName}</li>
))}
</ul>
</div>
)
}
这里是 .json 文件的一部分
{
"ground1":{
"groundId": "2",
"address": "77-101 Quai Branly, Paris, France",
"city": "Paris",
"country": "France",
"groundName": "Bir-Hakeim",
},
"ground2":{
"groundId": "26585",
"address": "1 Rue du Petit Cardinal, Bordeaux, France",
"city": "Bordeaux",
"country": "France",
"groundName": "1 Rue du Petit Cardinal"
}
}
谢谢你的帮助!=D
解决方案
<ul>
{
Object.values(groundNames).map((object) => (
let obj = groundNames[object];
<li key={(obj.groundId)}>{obj.groundName}</li>
))
}
</ul>
试试上面的代码
推荐阅读
- php - 如何在 PHP 登录页面中注入 SQL?
- gnu-make - GNU Make:如果重命名头文件,则自动先决条件不起作用
- c# - C#:检索 Json 数据结构,即使其中没有数据
- reactjs - React-map-gl(GeoJSON 地图示例):地图中的数据未通过控制面板更新(年份滑块)
- java - JVM 是否与操作系统保持时间同步?
- html - 如何防止组件重叠内容?
- typescript - 使用 CustomEvents 时出现打字稿错误
- swift - TableView, didSelectRowAt not called
- c++ - C++中用户定义类的动态内存分配和自动分配的区别
- go - 检查 time.now 是否在一天中的两次之间