React · Middle · Frage 5 von 75
Wofür ist useMemo da?
- 1Um einen Wert über das Neuladen der Seite zu behalten
- 2Um Seiteneffekte nach dem Rendern auszuführen
- 3Um eine teure Berechnung zwischen Renderings zu cachen
Antwort zeigen
Richtige Antwort: Um eine teure Berechnung zwischen Renderings zu cachen
Erklärung
useMemo(() => filterTodos(todos, tab), [todos, tab]) berechnet den Wert nur neu, wenn sich die Abhängigkeiten ändern. Der zweite Einsatz ist eine stabile Objektreferenz für memo-Kinder oder Effekt-Abhängigkeiten. React kann den Cache verwerfen, daher ist useMemo eine Optimierung, keine Garantie.