【发布时间】:2020-07-02 12:51:18
【问题描述】:
我正在尝试渲染和显示嵌套的 json 数据,但我有一些问题,这是代码。
import React, { useState, useEffect, useRef } from "react";
//import Moment from 'react-moment';
//import 'moment-timezone';
import moment from 'moment';
const dueTimes = [
{
distance: 6113,
start: {
time: moment().format("2020 7 1, 14, 38, 9"),
address: "University College Dublin, Belfield, Dublin 4, Ireland",
location: { lat: 53.30713120000001, lng: -6.220312 }
},
end: {
time: moment().format("2020 7 1, 15, 2, 8"),
address: "College Green, Dublin 2, Ireland",
location: { lat: 53.3443633, lng: -6.2593112 }
},
steps: [
{
distance: 347,
duration: 244,
start: { lat: 53.30713120000001, lng: -6.220312 },
stop: { lat: 53.309375, lng: -6.2187873 },
mode: "WALKING"
},
{
distance: 5445,
duration: 968,
start: { lat: 53.3094124, lng: -6.218878399999999 },
stop: { lat: 53.3404818, lng: -6.2585706 },
mode: "TRANSIT",
transit: {
dep: {
name: "UCD N11 Entrance, stop 768",
time: moment().format("2020 7 1, 14, 42, 13")
},
arr: {
name: "Dawson Street, stop 792",
time: moment().format("2020 7 1, 14, 58, 21")
},
headsign: "Ongar",
type: "Dublin Bus",
route: "39a"
}
},
{
distance: 321,
duration: 226,
start: { lat: 53.34212669999999, lng: -6.258003599999999 },
stop: { lat: 53.3443633, lng: -6.2593112 },
mode: "WALKING"
}
]
}
];
function Routes() {
return (
<div className="App">
<div className="posts">
{dueTimes.map(item => {
return (
<>
<h4>{item.distance}</h4>
<p>{item.start.time} </p>
</>
)
})}
</div>
</div>
);
}
export default Routes;
如何渲染所有这些数据 - 我也尝试添加嵌套地图,但似乎无法让它工作。是的,我试图显示所有这些数据。当我尝试访问嵌套数据时,我得到“错误:对象作为 React 子级无效(找到:带有键 {lat,lng} 的对象)。如果您打算渲染一组子级,请改用数组。”
【问题讨论】:
-
你想显示来自
dueTimes的所有数据吗? -
jsonformatter.curiousconcept.com 格式化您的 JSON,它很难阅读。 ;)
-
嗨,是的@ShahnawazHossan 我正在尝试显示来自dueTimes的所有数据,
-
谢谢@Emilis 完成:)。
-
你试过 Object.entries 吗? developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
标签: javascript json reactjs