У меня довольно сложная проблема. В моем методе componentDidMount у меня есть:
1.) Состояние, устанавливаемое для переменной 'dog' 2.) Вызов API, выполняемый через axios, ответ которого устанавливает состояние другой переменной 'dogName'
Это создает проблемы (данные, которые я хочу отобразить в браузере, не отображаются) - есть ли лучший способ написать мой код?
setData = async () => {
const x = await fetch("https://dog.ceo/api/breed/hound/images");
const y = await x.json();
const z = await y.message;
let newArr = [];
for (let i = 0; i < z.length; i++) {
if (i <= 9) {
newArr.push(z[i]);
}
}
return newArr;
};
componentDidMount() {
this.setState({
loading:true
})
this.setData()
.then(res =>{
this.setState({
loading:false,
dog: res,
})
})
axios.get('http://localhost:3000/dogs')
.then(res => {
this.setState({
dogName:res.data
})
})
.catch(error => {
console.log(error)
})
}
componentDidMount() { axios.get('http://localhost:5000/dogs') .then(res => { this.setState({ dogName:res.data }) }) }
16.07.2020console.log(this.state)
в функцию рендеринга, существует ли часть собаки? Может, покажете своюrender
функцию, может там небольшая ошибка :) 16.07.2020