Dans le ReactJS, je change la route à un nouveau avec un "id", puis basé sur cet "id", je dois appeler une API et récupérer des données.ReactJS - charger les données avant de rendre le composant
J'ai utilisé l'appel API dans componentDidMount
et componentWillMount
et j'ai essayé setState()
pour avoir mes données dans l'état. mais ils n'ont pas fonctionné dans mon cas.
Le problème est dans la partie render()
lorsque je veux utiliser mes données (à partir de l'état), les données ne sont pas là parce que l'appel API prend un certain temps pour mettre à jour l'état.
Voici mon code:
componentDidMount() {
api.get(id).then((response) => {
this.setState({response,});
});
Avec cette approche, je n'ai pas les données quand je le veux (render), il finira par être dans l'état mais trop tard! Comment puis-je modifier mon approche pour résoudre le problème de chargement?