во время следования этому руководству (https://www.youtube.com/watch?v=6Ied4aZxUzc&t=1619s) Я столкнулся с проблемой, когда this.setState()
всегда возвращает undefined
.
IP-адрес в следующем коде запрашивает мое приложение json-server
иОбещание успешно возвращено. Однако значение состояния всегда 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()
и передачи состояния конструктору, используя .bind(this)
в операторах then.