// Je ne suis pas bon en anglais, alors merci de comprendre.
Lorsque vous essayez d'utiliser une carte en recevant des données d'API, vous publiez un message pour trouver une solution car il existe une erreur de type. P >
Qu'est-ce qui ne va pas avec le code que j'ai écrit? p> est-ce le problème? P> Je pratique comment utiliser API. C'est dur. P> class MoviesCall extends React.Component {
state = {
movies: [],
list: [],
Date: "",
Type: ""
};
componentDidMount = async () => {
await axios
.get(endPoint)
.then(res => res.data)
.then(data =>
this.setState({
movies: data.boxOfficeResult,
list: data.boxOfficeResult.dailyBoxOfficeList,
Date: data.boxOfficeResult.showRange,
Type: data.boxOfficeResult.boxofficeType
})
);
console.log(this.state.movies);
console.log(this.state.list);
console.log(this.state.Date);
console.log(this.state.Type);
};
render() {
return (
<div>
{this.state.movies.map(movie => (
<div key={movie.id}></div>
))}
</div>
);
}
}
3 Réponses :
à partir de ce bloc, j'ai trouvé 3 problème
1) 2) 3) Ceci code> strong> doit être Ceci code> p > film code> strong> doit être films code> strong> p> Liste code> strud> doit être Liste code> strud> p>
Avant de définir l'état enregistre les données de la console et voyez son tableau ou non. utilisez-vous "ceci"? il devrait être "ceci"
Peut-être que vous manquez le cas lorsque les données ne sont pas finies de chargement. À cette heure dans votre fonction code> code> doit être comme ceci:
render() {
const { movies } = this.state;
if (!movies || !Array.isArray(movies))
return null;
return (
<div>
{movies.map(movie => (
<div key={movie.id}></div>
))}
</div>
);
}
data.boxofficeresult code> Quel type d'objet est-ce? Il est peu probable qu'il s'agisse d'une matrice, car sur les lignes suivantes, vous accédez à des propriétés telles quedata.boxofficeresult.dailyboxofficelist code>. Et si ce n'est pas un tableau, il n'a pas de.map code>.data.boxoficeresult.dailyboxofficeliste code> supprimé mais la même erreur apparaît. Je ne peux pas dire où est faux.@ user11904800 Pouvez-vous faire un journal de console pour
this.state.movies code> pour voir si les films code> sont tout type de tableau ou non?