【发布时间】:2020-08-23 02:04:48
【问题描述】:
我有一个 Node Js API,我可以在其中使用 find 函数获取我的数据库数据。它完美地工作并发送我的结果。
使用 React 和 Axios,我得到了数据,但只要我将数据传递到 setState,它就会发送 null。
这是我的 API find() 函数
dbo.collection("students").find({}).toArray(function(err, result) {
if (err) throw err;
var students = result;
reponse.send(students);
db.close();
});
这是我的 Axios constructor() 和 componentDidMont()
constructor() {
super();
this.state = {
students: [],
}
}
componentDidMount() {
axios.get("http://localhost:3333/").then((data) => {
console.log(data);
this.setState({students:data.data.students});
console.log(this.state);
});
}
console.log(data)返回这个
`Object { data: (33) […], status: 200, statusText: "OK", headers: {…}, config: {…}, request: XMLHttpRequest }`
而console.log(this.state) 则返回此
Object { students: undefined }
【问题讨论】:
-
你确定你的
data.data中有students吗?
标签: javascript node.js reactjs api axios