我想对此虚拟端点发出获取请求:https://reqres.in/api/users/2
但是我不断收到错误消息:
TypeError: this.state.users.map is not a function
这是我的代码:
state = {
users: []
}
componentDidMount() {
axios.get(`https://reqres.in/api/users/2`)
.then(res => {
this.setState({ users : res.data });
})
}
对我做错事有帮助吗?
答案 0 :(得分:0)
看来端点正在返回一个对象而不是数组。
如果您想使用数组,可以这样做:
this.setState({ users: [res.data] })
但总的来说,我个人会将状态名称更改为单数形式。然后将其用作对象(从端点开始)。
例如
this.setState({ person: res.data })
然后根据需要消耗属性:
this.state.person.id
希望这对您有帮助>