componentDidMount() {
axios.get('http://localhost:4000/info/admincontact').then(res => {
this.setState({
blogid: res.data
});
console.log(this.state.blogid)
console.log(this.state.blogid.city);
})
###CONSOLE
"5f45444391b5a456bc90d7f7"proto:数组(2)0:城市:“Salem”电子邮件:“sachinvijay@gmail.com”地图:"https://www.google.com/maps/place/ITPL/@12.9859537,77.7322496,13z/data=!4m8!1m2!2m1!1sitpl!3m4!1s0x3bae11e4fb1b21a5:0x6018797bb4fac8b2!8m2!3d12.9874525!4d77.7370219"phone:“9600337763状态:”泰米尔纳德邦“__v: 0_id: 0_id Object1: city:”Salem“电子邮件:"sachinvijay@gmail.com"mapl:"https://www.google.com/maps/place/ITPL/@12.9859537,77.7322496,13z/data=!4m8!1m2!2m1!1sitpl!3m4!1s0x3bae11e4fb1b21a5:0x6018797bb4fac8b2!8m2!3d12.9874525!4d77.7370219"phone:”9600337763“状态:”泰米尔纳德邦“v: 0_id:"5f45497b9120014680289a99"proto: Objectlength: 2__proto:数组(0) Contact.js:49未定义的
发布于 2020-08-25 18:11:25
React不是一个同步函数,所以最好这样编写。
this.setState({blogid: res.data}, () => {
console.log(this.state.blogid)
console.log(this.state.blogid.city);
});
发布于 2020-08-25 18:13:59
这是blogid
中的一个数组,所以您需要迭代,或者可以使用它的特定索引:
this.setState({blogid: res.data}, () => {
console.log(this.state.blogid[0].city);
});
是的,您必须在setState
的回调中记录它,因为它是异步,它的值需要一些时间来更新。回调将确保只在完成/完成setState
操作时进行日志记录。
或者您可以使用forEach
this.state.blogid.forEach(obj => console.log(obj.city));
https://stackoverflow.com/questions/63584751
复制相似问题