C'est parce que setState modifie l'état et provoque un nouveau rendu. Cela peut être une opération coûteuse et la rendre synchrone peut empêcher le navigateur de répondre. Ainsi, les appels setState sont asynchrones et groupés pour une meilleure expérience et de meilleures performances de l'interface utilisateur.
Pourquoi la méthode setState est-elle asynchrone ?
Pour mettre à jour l'état d'un composant, vous utilisez la méthode setState. Cependant, il est facile d'oublier que la méthode setState est asynchrone, ce qui rend difficile le débogage de votre code. La fonction setState ne renvoie pas non plus de promesse L'utilisation de async/wait ou quelque chose de similaire ne fonctionnera pas.
SetState peut-il être rendu synchrone ?
Cela peut sembler bizarre mais oui setState peut fonctionner de manière synchrone dans react.
Pourquoi y a-t-il un délai dans setState ?
Explication officielle. Considérez setState() comme une requête plutôt qu'une commande immédiate pour mettre à jour le composant. Pour une meilleure perception des performances, React peut le retarder, puis mettre à jour plusieurs composants en une seule passe. React ne garantit pas que les changements d'état seront appliqués immédiatement.
Est-ce que React JS est synchrone ou asynchrone ?
Tout d'abord, oui, il est asynchrone.