„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum treten mit useState im nicht strikten Modus mehrere Renderings auf?

Warum treten mit useState im nicht strikten Modus mehrere Renderings auf?

Veröffentlicht am 04.11.2024
Durchsuche:302

Why Do Multiple Renders Occur with useState in Non-Strict Mode?

Warum mehrere Renderings mit useState im nicht strikten Modus?

Wenn Sie useState in React verwenden, stellen Sie möglicherweise fest, dass Ihre Komponente mehr als einmal gerendert wird . Dieses Verhalten, das auch ohne Aktivierung des strengen Modus auftreten kann, bedarf einer Klärung.

Wenn Sie auf die Schaltfläche „Nummer ändern“ klicken, werden Sie aufgrund eines zusätzlichen Komponentenrenderings zwei Konsolenanweisungen („hier“) sehen. Der Grund dafür ist nicht der strikte Modus, wie zuvor vermutet. Stattdessen löst React ein doppeltes Rendering aus, um eine deterministischere Entwicklungsumgebung zu ermöglichen.

Laut der Dokumentation von React führt der nicht-strikte Modus in der Entwicklung Folgendes aus:

  • Ruft absichtlich den Komponentenkonstruktor auf, Rendern und Zustandsaktualisierung funktionieren zweimal.
  • Verdoppelt den Aufruf von Funktionskomponentenkörpern und Hooks wie useState.

Dieses doppelte Rendering bietet die Möglichkeit, potenzielle Nebenwirkungen in Ihrem Code zu erkennen , wodurch Leistungsprobleme oder Fehler frühzeitig hervorgehoben werden. Während dieses zusätzliche Rendering in der Produktion nicht erfolgt, dient es als wertvolle Hilfe bei der Fehlerbehebung während der Entwicklung.

Freigabeerklärung Dieser Artikel wird reproduziert unter: 1729694957 Wenn ein Verstoß vorliegt, wenden Sie sich bitte an [email protected], um ihn zu löschen.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3