J'ai installer django rest framework et j'ai suivi un tuto, donc j'arrive a générer un json a partir d'un url sur l'adresse : 127.0.0.1:4000
J'arrive donc a afficher le contenu du json avec un fetch en react :
Cependant j'ai souhaiter que se soit asynchrone donc lorsque je modifie le json a partir de django rest framework, et la sa ne fonctionne pas je suis obligé d'actualiser ma page avec react pour que la liste se mette a jour !
componentDidMount s'exécute lorsque le composant est monté. React se met à jour automatiquement en fonction de ton state. Ton state ne se met donc pas à jour en fonction du retour de fetch car fetch n'est appelé qu'une seule fois.
Qu'il soit caché ou visible, le rafraîchissement "automatique" se fait de façon régulière comme le permet setInterval. React aussi appelle la fonction render plusieurs fois (à chaque modification du state) si la fonction n'est pas appelée toutes les secondes mais à chaque modification du state c'est parce qu'en interne c'est une autre fonction qui est appelée (dont j'ai oublié le nom) qui teste si la state a changé ou non. Si je simplifie ça donne ça :
J'imagine que React utilise setInterval mais peut être que c'est autre chose. Tu peux consulter le code de react sur git pour vérifier. Je comprends que ta solution parait crade mais je penses que c'est simplement parce que tu as l'habitude d'utiliser des mécanismes "cachés". Si tu fouille un peu, je suis certain que la solution qu'utilise React est similaire et par conséquent utiliser setInterval dans ce cas précis n'est pas si horrible.
[reactJS] Problème fetch
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Ce qui me dérange donc c'est le set interval, je souhaiterais que se soit asynchrone automatiquement ! quelqu'un aurait une solution ?