反应-TypeError:this.state.data.map不是一个函数

时间:2018-09-15 13:42:30

标签: reactjs

我有state data:[],并且我试图将URL的值设置为以下状态:

componentDidMount(){
axios.get('http://localhost:8082/seekers')
  .then( response => {
     console.log(response.data);
     this.setState({data: response.data})
})
.catch(error =>  {
 console.log(error);
});
}

当我使用地图显示数据时:

this.state.data.map((dynamicData,key)=>
<div key={id++}>
{dynamicData.name}{dynamicData.bloodtype}{dynamicData.bloodunits}
 </div>
)

我收到此错误:

  

TypeError:this.state.data.map不是函数

如何解决?

2 个答案:

答案 0 :(得分:2)

this.state.data很可能不是数组。建议您检查返回的response是什么类型的数据。

答案 1 :(得分:0)

请检查响应,response.data可能是一个对象。 JavaScript中的对象{}没有方法.map(),仅适用于数组[]。