Я получаю следующую ошибку:
Uncaught ReferenceError: videos2 is not defined
В этом приложении:
class App extends Component {
constructor(props) {
super(props)
this.state = {
videos2:[],
selectedVideo:null
}
this.DMSearch()
}
DMSearch(){
fetch("https://api.dailymotion.com/videos?fields=description,id,thumbnail_url,title,&limit=5&search=cars")
.then(response => response.json())
.then(data=>this.setState({
videos2:data.videos2,
selectedVideo:videos2[0]}))
console.log(videos2)
}
render () {
const {videos2}=this.state
return (
<div>
<SearchBar onSearchTermChange= {DMSearch}/>
<VideoDetail video={this.state.selectedVideo}/>
<VideoList
onVideoSelect={selectedVideo=>this.setState({selectedVideo})}
videos2={this.state.videos2}/>
</div>
)
}
}
Поэтому мне интересно, где я должен определять видео2 отдельно от того, где оно уже определено.Кто-нибудь может указать мне на ту часть компонента, которая может быть причиной ошибки?
РЕДАКТИРОВАТЬ: На самом деле это было связано с тем, как Api JSON был сформирован.Это правильный способ получить список из json:
this.setState({
videos2: videos2.list,
selectedVideo: videos2[0]
});