Я думаю, что проблема в том, что вы сохранили gifs
значение в gipphy
переменной состояния.Поэтому вместо this.state.gifs
вы должны использовать this.state.gipphy
,
<img src={ this.state.gipphy[0].images.original.url} alt="gipphy.com animations"/>
Также убедитесь, что gifs
содержит правильное значение.Просто сделайте console.log(gifs)
в конструкторе.Если вы не получите gifs
значение, то я думаю, что вам нужно вернуть его из обратного вызова,
var gifs = connect(message => {
console.log(message);
return message; //return the message here
});
Обновление
Я думаю, что вашAPI требует времени для возврата данных.Вы можете использовать метод componentDidMount
,
componentDidMount(){
connect(message => {
this.setState({
gipphy: message
})
});
}
Вам необходимо условно отрендерить ваш img
,
{this.state.giphy && this.state.giphy.length > 0 && <img src={ this.state.giphy[0].images.original.url} alt="giphy.com animations"/>}