我是反应JS的新手,我试图从Json格式的URL中提取数据。 我做了以下但是我继续在控制台上获得反馈
流浪者:未定义。
当我应该得到像
这样的东西时,我该怎么做呢?流浪者:[物体,物体,物体]
class App extends React.Component {
constructor(props){
super(props);
this.state={rovers:[]};
}
componentWillMount(){
api.getRovers().then((response) =>{
this.setState({
rovers: response.rovers
});
});
}
render() {
console.log("Rovers: ", this.state.rovers);
}
这就是调用json链接的地方
var api={
getRovers(){
var url='https://jsonplaceholder.typicode.com/posts/1';
return fetch(url).then((response)=> response.json());
}
};
module.exports=api;
答案 0 :(得分:2)
端点使用不包含rovers
的对象进行回复。但是,它包括:id
,userId
,title
和body
这就是response.rovers
为undefined
的原因。然后this.state.rovers
是相同的
body
而不是rovers
,在这种情况下,请替换:componentWillMount(){
api.getRovers().then((response) =>{
this.setState({
rovers: response.rovers
});
});
}
通过:
componentWillMount(){
api.getRovers().then((response) =>{
this.setState({
rovers: response.body.split('\n')
});
});
}