在遵循本指南的同时(
https://www.youtube.com/watch?v=6Ied4aZxUzc&t=1619s)我遇到一个问题,this.setState()
总是返回undefined
。
以下代码中的IP向我的json-server
应用请求,并且成功返回了Promise。但是状态的值始终为undefined
。
componentDidMount()
const uri = 'http://192.168.1.220:3000/Songs';
fetch(uri, {
method: 'GET',
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
},
})
.then((response) => {
return response.json()
})
.then(json => {
console.log(json);
this.setState({songs: json});
})
.catch(function (error) {
console.log('Looks like there was a problem: \n', error)
});
我试图通过以下方法解决:关闭cors,在componentDidMount()
外部调用静态方法,然后在then语句上使用.bind(this)
将状态传递给构造函数。