我试图从api中获取一些数据,但由于某种原因它无法正常工作,我也尝试使用Object.key
。
我已经做过两次api提取,但是我想我不理解这种JSON格式
这是我的代码:
class CryptoNews extends Component {
constructor(props){
super(props);
this.state = {
news: []
}
}
componentDidMount(){
fetch('https://min-api.cryptocompare.com/data/v2/news/?feeds=cryptocompare,cointelegraph,coindesk&extraParams=YourSite')
.then(res => res.json())
.then(data => this.setState({
news: data
})
)}
render() {
return (
<div>
{this.state.news.map((key) => (
<div key={key.id}>
<h2>{key.body}</h2>
</div>
))}
</div>
)
}
}
答案 0 :(得分:1)
您需要从响应对象中获取LONGLONG
属性。
所以:
Data
答案 1 :(得分:0)
您正在尝试获取Data数组并将其设置为this.state.news。
JSON消息的格式如下。
{
"Type":100,
"Message":"News list successfully returned",
"Promoted":[],
"Data":[],
"RateLimit":{},
"HasWarning":false
}
您的componentDidMount方法应如下所示
componentDidMount(){
fetch('https://min-api.cryptocompare.com/data/v2/news/?
feeds=cryptocompare,cointelegraph,coindesk&extraParams=YourSite')
.then(res => res.json())
.then(data => this.setState({
news: data.Data
})
)}