Я уверен, что здесь есть что-то глупое, что я упускаю из виду, но заранее благодарю.
Я пытаюсь передать реквизит моей добыче. location.param1
отображается нормально, а то же самое внутри вызова fetchData () - неопределенным. Даже когда вызывается после того, как начальное показывается как определено.
Вот код ...
fetchData = (name) => {
console.log(name)
fetch(`https://pokeapi.co/api/v2/pokemon/${name}`)
.then(res => res.json())
.then(data => this.setState({
pokemon: {
id: data.id,
name: data.name,
sprites: data.sprites,
abilities: data.abilities,
base_experience: data.base_experience,
forms: data.forms,
game_showings: data.game_indices,
held_items: data.held_items,
moves: data.moves,
stats: data.stats,
types: data.types,
weight: data.weight,
height: data.height
}
}), console.log(this.state.pokemon))
}
render() {
const { location } = this.props;
return (
<div >
{location.param1}
{this.fetchData(location.param1)}
</div>
)
}
Спасибо!