React · Senior · Frage 47 von 75
Warum kann React.memo mit einer eigenen Vergleichsfunktion gefährlich sein?
- 1Die Funktion läuft auf dem Server und verlangsamt das SSR
- 2Werden nicht alle Props verglichen, bleiben Daten veraltet
- 3Eine eigene Vergleichsfunktion ist im Production-Build verboten
Antwort zeigen
Richtige Antwort: Werden nicht alle Props verglichen, bleiben Daten veraltet
Erklärung
arePropsEqual muss alle Props berücksichtigen, auch Funktionen: Ignorierst du einen Callback, ruft die Komponente seine alte Version mit einer „eingefrorenen“ Closure auf. Ein tiefer Vergleich großer Daten kann mehr kosten als das Rendern selbst. Props zu stabilisieren ist meist die bessere Wahl.