【发布时间】:2021-02-05 15:38:52
【问题描述】:
我正在尝试将此数据从 API 呈现到我的页面上。 我知道我要渲染的东西不在典型的数组中,它是一个让我失望的 javascript 对象。 使用我的代码,API 数据就在那里,它只是能够访问的问题,因为 .map 不起作用,因为我拥有的数据不是数组。 我需要创建另一个函数吗?
我不确定
import React from 'react';
import './App.css';
class App extends React.Component {
state = {
apiData: []
}
render() {
console.log('api datat is')
return (
<div>
<center>
<h1>hello something</h1></center>
{this.state.apiData.map(title => title.rendered)}
</div>
)
}
componentDidMount() {
fetch('http://www.mocky.io/v2/5dece3d333000052002b9037')
.then(response => response.json())
.then(data => {
this.setState({
apiData: data.data
})
})
console.log("component fetched data")
}
}
export default App
任何帮助都会很棒。
我还在学习如何编码,所以要友好
【问题讨论】:
-
试试
Array.from(this.state.apiData).map(title => title.rendered) -
@prasanth
data.data是undefined,这是引发上述错误的唯一情况 -
我改变了我的设置状态,它起作用了!但是,当我尝试渲染标题时,我仍然收到此错误,对象作为 React 子级无效(找到:带有键 {rendered} 的对象)。如果您打算渲染一组子项,请改用数组
标签: javascript arrays json object